Why the i-have-adhd Always-On Flag Requires a Specific Plugin Version

The always-on flag only functions with plugin version 0.1.0 or later because it depends on a SessionStart hook that executes hooks/always-on.sh at the start of every session, which earlier versions lack.

The always-on flag in the ayghri/i-have-adhd repository provides persistent ADHD-focused assistance by automatically injecting the ruleset into every Claude Code session. However, this feature requires specific hook infrastructure within the plugin itself to operate. Without the correct version installed, the flag file is silently ignored and the behavior never activates.

How the Always-On Mechanism Works

The always-on feature operates through a file-based flag system. When you create the file ~/.claude/.i-have-adhd-always, you signal the plugin to activate persistent mode. At session start, the system checks for this flag and, if present, injects the contents of skills/i-have-adhd/SKILL.md into the conversation context.

This process relies on the hooks/always-on.sh script (lines 10-15 and 29-30), which performs three critical functions: checking for the flag file's existence, loading the SKILL.md ruleset, and printing an activation banner. The script references the specific path ~/.claude/.i-have-adhd-always to determine whether to proceed with injection.

The SessionStart Hook Dependency

The core requirement that ties the always-on flag to a specific version is the SessionStart hook implementation. According to the source code in hooks/hooks.json, the plugin registers hooks/always-on.sh to execute automatically at the start of every Claude Code session.

This hook infrastructure was introduced in plugin version 0.1.0. Older releases of the i-have-adhd plugin do not contain the hooks/ directory or the hooks.json configuration file. Consequently, even if you create the flag file on disk, the absence of the hook means no script runs to check for it or load the ruleset.

Version Compatibility and File Structure

To verify your plugin includes the necessary components, check for these specific files in your installation:

If your installation predates version 0.1.0, these files are missing entirely, breaking the always-on functionality chain.

Enabling and Troubleshooting the Always-On Flag

To activate the feature with a compatible version:


# Create the flag file to enable always-on mode

touch ~/.claude/.i-have-adhd-always

To disable it:


# Remove the flag file to disable always-on mode

rm ~/.claude/.i-have-adhd-always

If the always-on behavior fails to activate despite creating the flag file, update the plugin to ensure the SessionStart hook is present:


# Update to the version containing hooks/hooks.json

claude plugin marketplace update i-have-adhd

The troubleshooting documentation in INSTALL.md (lines 99-100) specifically notes this version requirement, indicating that users must update to the release that includes the hook infrastructure for the flag to function.

Summary

  • The always-on flag requires plugin version 0.1.0 or later to function because earlier versions lack the SessionStart hook infrastructure.
  • The feature depends on hooks/hooks.json registering hooks/always-on.sh to execute at session start.
  • The script checks for ~/.claude/.i-have-adhd-always and injects skills/i-have-adhd/SKILL.md when present.
  • Update the plugin using claude plugin marketplace update i-have-adhd if the flag appears ineffective.

Frequently Asked Questions

What plugin version do I need for the always-on flag to work?

You need version 0.1.0 or later. This version introduced the hooks/hooks.json file and the hooks/always-on.sh script that checks for the flag file at session start. Earlier versions lack this infrastructure entirely.

Why is my always-on flag file being ignored?

If you created ~/.claude/.i-have-adhd-always but see no effect, you are likely running a plugin version older than 0.1.0. Without the SessionStart hook defined in hooks/hooks.json, the system never executes the script that reads the flag file. Update the plugin to resolve this.

Where is the always-on logic implemented in the source code?

The logic resides in hooks/always-on.sh (specifically lines 10-15 and 29-30), which checks for the flag file and loads the ruleset. The hook registration that triggers this script is defined in hooks/hooks.json. The actual ruleset content comes from skills/i-have-adhd/SKILL.md.

Can I use the always-on feature without updating the plugin?

No. The always-on functionality fundamentally requires the SessionStart hook mechanism introduced in version 0.1.0. There is no workaround to enable this feature in earlier versions because the necessary hook infrastructure and script files are absent from those releases.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →