Skip to content

WIP: basic memory/recall#4

Draft
wpfleger96 wants to merge 4 commits intomainfrom
recall-basic-memory
Draft

WIP: basic memory/recall#4
wpfleger96 wants to merge 4 commits intomainfrom
recall-basic-memory

Conversation

@wpfleger96
Copy link
Copy Markdown
Owner

No description provided.

Establishes default → personal → work inheritance chain. Default stays
lean with cc-marketplace as the only bundled default. Personal extends
default with preferred model (opusplan). Work extends personal with
extended-context model overrides.

Cleans up personal artifacts that leaked into the base tier: removes
unused beads/perles Bash permissions, removes plugin-dev plugin from
default profile, genericizes personal username and org references in
AGENTS.md examples. Removes vestigial enabledPlugins from base
settings.json, dead is_enabled field from ToolSpec, and stale
refactoring comment in config.py. Adds empty mcps.json so profile
mcp_overrides can merge onto a base.
codex exec hangs in non-TTY contexts (Claude Code's Bash tool) because
it waits for stdin that never arrives. The ad37829 fix piped prompts
via stdin, which worked but caused Codex to echo the full prompt to
stderr. The OPENAI_API_KEY injection was also unnecessary — ChatGPT
OAuth works when the configured model supports exec mode.

Fix: close stdin with < /dev/null and instruct Codex to cat the prompt
file via its shell tool. Drop API key injection and key-file guard.

Separately, the cache system only activated when settings_overrides
existed, but agents with preserved_fields (codex: projects, claude:
hooks/plugins, goose: extensions, gemini: ide) need the cache as a
write buffer even without overrides — otherwise the symlink points to
the git-tracked source and the agent dirties the repo. Add
Agent.needs_cache property and a force parameter on Config cache
helpers so all four agents route through the cache unconditionally.

Also make the crossfire skill auto-execute by replacing the persona
description with an imperative heading.
The previous commit expanded cache creation to agents with
preserved_fields, but three code paths still assumed "overrides =
cache": cleanup_orphaned_cache deleted caches it shouldn't have,
config show --merged skipped agents with preserved-field caches,
and direct dict access on settings_overrides would KeyError for
agents that only have preserved_fields.

Make cleanup_orphaned_cache require an explicit agents_needing_cache
set (removes the unsafe settings_overrides-only fallback), fix
config show --merged to detect cache files regardless of overrides,
and guard dict accesses with .get().
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant