Tests still imported and patched the old bin.* package (renamed to
myclaude.* earlier), breaking collection. Point them at myclaude.* and
add coverage for the new claude-flag passthrough and --list session
listing.
Bare `myclaude` already launched claude, but a leading unknown flag
(`--resume`, `-r <id>`, `--continue`) made click raise "No such command"
because it was parsed as a subcommand name. click 8.3 raises this before
the group callback runs, so it can't be intercepted there.
- Add LaunchGroup overriding resolve_command: any non-subcommand leading
token routes the raw args to a hidden `__run__` passthrough that forwards
them to claude, run in the resolved cwd (--cwd, default workspace/).
- Add `--list/-l` to list resumable sessions (id, mtime, first prompt) for
the working directory, read from ~/.claude/projects/<munged-cwd>/.
- Recommend official install script over npm
- Pin npm fallback to 2.1.118 due to Kimi compatibility
- Update Windows install notes and first-run auth hint
- Stop tracking settings.local.json; commit base settings.json instead
- Scope file permissions to workspace/ and .claude/ as safer default
- Add .gitignore entries for .claude runtime files (scheduled_tasks, keybindings)
- Annotate _LINK_MAP in init.py as user-customizable
- Strip personal references from workspace CLAUDE.md template
Always forward --dangerously-skip-permissions to claude binary without
requiring the user to pass the flag manually. Removes the option from
help output and CLI signature.
- Remove --dangerously-skip-permissions click option
- Always append the flag to the claude command
- Update tests to assert default behavior and help output
- Extend .gitignore with desktop build/release directories
Reverts an earlier incorrect cleanup: click.option with
is_flag=False + flag_value="." is valid click syntax that
allows --cwd to work both with and without an argument:
--cwd → cwd="." (current directory)
--cwd /path → cwd="/path"
--cwd=. → cwd="."
--cwd --flag → cwd=".", flag=True (correctly parsed)
Without these parameters, --cwd requires a value and
--dangerously-skip-permissions would be misread as the cwd.
- get_myclaude_project_root() now expands ~ in MYCLAUDE_PROJECT_ROOT
(was resolving to ./~/path instead of $HOME/path)
- Extract hardcoded 16/8 depth limits as _MAX_WALK_DEPTH / _MAX_SOURCE_DEPTH
- Remove redundant cwd= from _run_pip_editable (already specified via -e)
- Add test_cwd_invalid_directory and test_env_var_expands_tilde
- Remove incorrect test_extra_args_forwarded (click.Group does not
support forwarding arbitrary args; ctx.args is always empty)
- Reduce README from 530+ lines to ~110 lines, focusing on CLI core
- Separate ecosystem extensions (cc-switch, Metabot, Skills) into
an optional section
- Add unsupported shell hint in install_completion.sh
- Remove is_flag=False + flag_value="." combination which has no effect
on click option with is_flag=False (default)
- Create dedicated click.Command for upgrade instead of raw alias
assignment, so help shows correct command name
- Add MYCLAUDE_WORKSPACE_ROOT env var, default ~/workspace
- Auto-create workspace directory if it does not exist
- Move workspace/CLAUDE.md + .gitignore to workspace_template/
- Remove hardcoded symlink paths from workspace template
- Update get_workspace_root() with env-var priority logic
- Update metabot bots.json defaultWorkingDirectory to ~/workspace
New `myclaude mail` group with:
- config: interactive account setup
- inbox: list recent messages
- read: show message by UID
- send: send email with attachments
- reply/forward: reply to or forward messages
Replace manual ctx.args parsing with a proper @click.option using
is_flag=False and flag_value='.'. This enables tab completion for
the --cwd / -C option and directory-only path completion after it.
Also bump click dependency to >=8.3.2 to avoid the optional-value
regression in 8.3.0/8.3.1.
Add _install-completions and _uninstall-completions targets to Makefile:
- Detect shell (zsh/bash) and generate appropriate completion files
- Install to ~/.local/bin/completions/ on make install
- Remove completions on make uninstall
- Integrate with existing update/upgrade commands
--cwd was defined as a Click option but also parsed manually from ctx.args,
which caused conflicts when --cwd was followed by another flag (like
--dangerously-skip-permissions). Now --cwd is parsed entirely manually,
allowing:
--cwd alone -> use current directory
--cwd /path -> use specified path
(none) -> use myclaude project root (default)
- Remove git-proxy-clone from skills table (it's a custom local skill)
- Add appendix section explaining FastGithub setup
- Include copy-paste prompt for Claude to create the skill
- Add manual alias configuration as fallback
Move documented and skill paths to knowledge/memories and knowledge/files
(project root, mappable to @knowledge) to reduce sandbox issues on .claude/.
Update CLAUDE.md memory protocol, update-mykb-* skills, and settings.local.json
bootstrap check for core.json.
Made-with: Cursor