This is a lightweight “workspace” repository that sits above multiple sibling codebases (for example gopherbot/ and one or more robot directories like clu/). Its purpose is to hold shared workspace configuration and agent instructions for working across those sibling directories in a single Codex session.
This repo is intentionally not a monorepo. The sibling directories are their own independent git repositories and are not tracked here.
-
AGENTS.md
Workspace-level agent instructions, including the “Away Mode” workflow used to drive Codex via Slack throughgopherbot-mcp. -
.codex/
Codex configuration for this workspace (for example aconfig.tomlthat registers the MCP server). -
README.mdand.gitignore
Minimal documentation and rules for what this workspace tracks.
- It does not version the
gopherbot/repository. - It does not version any robot repositories/directories (e.g.,
clu/). - It does not use git submodules for sibling repos.
The .gitignore is set up to ignore everything by default and only include a small allowlist of workspace files. This prevents accidentally staging sibling repos into this workspace repo.
A common layout looks like:
gopherbot-work/AGENTS.md.codex/gopherbot/(separate git repo; ignored here)clu/(separate git repo; ignored here)- other sibling robots/tools (separate git repos; ignored here)
Start Codex from the workspace root (gopherbot-work/) so it sees the workspace-level AGENTS.md and .codex configuration. From there, you can work across gopherbot/ and robot directories in a single session.
If you’re using “Away Mode,” the agent is driven through Slack commands delivered by gopherbot-mcp, and it uses tell_user() to post status updates back into the active Slack thread. The detailed behavior contract lives in AGENTS.md.
If you add new workspace-level files you want tracked (for example a notes/ folder or helper scripts), update .gitignore to explicitly allow them.