You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
No commands recorded on immutable Linux OS (Fedora Atomic) #10
No commands recorded on immutable Linux OS (Fedora Atomic)
Environment
OS: Fedora 43 (immutable/atomic variant)
Kernel: 6.17.7-ba25.fc43.x86_64
Shell: /bin/bash
wake-mcp location: ~/.local/bin/wake-mcp
Home directory: /var/home/user1 (not /home/User1)
Problem
Wake starts a session successfully but no commands are ever recorded. wake_list_commands and wake_log always return "No commands recorded yet", even after running commands in the terminal.
My best guess it the shell hooks aren't firing or are failing silently. Let me think about how I can repro your environment and also test the bash setup a bit more (i'm primarily on zsh).
My best guess from spinning up a container that mimics your environment is that SHELL is set as a shell variable but not exported to the environment which would mean this line result in incorrect behavior by falling back to /bin/sh which doesn't source .bashrc afaik.
Before starting a wake shell if you run the following, what's the output
printenv SHELL || echo "SHELL not in environment"
If it prints "SHELL not in environment", that confirms my hypothesis and I'll need to update the line linked above to be more defensive and probably fall back to /etc/passwd.
If it prints /bin/bash, then i'm not entirely sure what's going wrong.
To confirm my hypothesis, you could try the following:
Just run echo 'eval "$(wake init bash)"' >> ~/.bashrc and then wake shell (which spawns bash, sourcing the ~/.bashrc automatically). You should be good to go.
Activity
joemckenney commentedon Feb 1, 2026
My best guess it the shell hooks aren't firing or are failing silently. Let me think about how I can repro your environment and also test the bash setup a bit more (i'm primarily on zsh).
Will post any learnings/findings along the way.
joemckenney commentedon Feb 1, 2026
Can you run the following inside of a wake shell:
1. Is the hook defined?
type __wake_preexec 2>/dev/null || echo "HOOK NOT DEFINED"2. Where is the wake init line?
grep -l "wake init" ~/.bashrc ~/.bash_profile 2>/dev/null || echo "NOT FOUND IN EITHER"3. What path does the hook use vs where wake actually is?
wake init bash | grep -o '"[^"]*wake"'which wake4. Check the actual binary path
readlink -f "$(which wake)"joemckenney commentedon Feb 1, 2026
My best guess from spinning up a container that mimics your environment is that SHELL is set as a shell variable but not exported to the environment which would mean this line result in incorrect behavior by falling back to
/bin/shwhich doesn't source .bashrc afaik.Before starting a
wake shellif you run the following, what's the outputprintenv SHELL || echo "SHELL not in environment"If it prints "SHELL not in environment", that confirms my hypothesis and I'll need to update the line linked above to be more defensive and probably fall back to
/etc/passwd.If it prints
/bin/bash, then i'm not entirely sure what's going wrong.To confirm my hypothesis, you could try the following:
joemckenney commentedon Feb 1, 2026
Here's my reproduction setup #11
fix: read user shell from /etc/passwd when SHELL env var not set
joemckenney commentedon Feb 1, 2026
k, the repro branch (#11) now has a fix for what I believe is the issue. The
scripts/repro-issue-10.shconfirms the fix.I'll merge that once you respond with confirmation of my hypothesis and push a new version/release.
ronki2304 commentedon Feb 1, 2026
Hello,
thanks for your help here are the commands output
before wake shell
inside wake shell
joemckenney commentedon Feb 1, 2026
K, this command/output is telling
So while I see in your "Steps to reproduce" step 2 you are adding the hooks to your shell, they don't appear to be there per the
grep.So, concretely, you are missing
eval "$(wake init bash)"in your .bashrc (see Setup instructions)To confirm, what's the output of
cat ~/.bashrc | grep -i wakeEither:
joemckenney commentedon Feb 1, 2026
Just run
echo 'eval "$(wake init bash)"' >> ~/.bashrcand thenwake shell(which spawns bash, sourcing the ~/.bashrc automatically). You should be good to go.ronki2304 commentedon Feb 1, 2026