-
Notifications
You must be signed in to change notification settings - Fork 3
FAQ
"One source of truth for every AI coding tool, with built-in multi-developer attribution and a learning loop."
Those are output formats. dotagent is the system that generates all of
them (and keeps them in sync) from a single source — your docs/*.md plus
the four memories.
No. dotagent works without ANTHROPIC_API_KEY. The key enables two
features:
- LLM-backed drafting of
.agent/*.mdondotagent init. -
dotagent skill runexecution (without the key, returns the resolved prompt).
Everything else works offline.
No. The base install does not phone home. The optional dotagent server
is software you run on your infrastructure; clients only post to it
when you explicitly set server.forward_events: true.
The optional [ml] extra downloads the all-MiniLM-L6-v2 sentence
transformer (~22MB) from HuggingFace the first time you use embeddings.
Yes — but content is preserved:
- On
init, your existing CLAUDE.md is parsed (the "ingest" phase) and its H2 sections are routed into.agent/{style,rules,architecture,patterns,preferences}.md. - The original file is backed up to
.agent/.imported/CLAUDE.md.original(one-time, never re-overwritten). - A new CLAUDE.md is rendered that includes the contents of those
.agent/*.mdfiles.
If you decide you don't want dotagent managing CLAUDE.md, restore the
original with dotagent restore-original --name claude.
dotagent doesn't directly model dev/prod. Workarounds:
- Use two repos (different
.agent/). - Use environment-specific
docs/*-dev.mdanddocs/*-prod.md, switch.agent/config.yamlsources:via a script. - Use the custom adapter to render two different output files.
Yes. Episodic JSONL filenames namespace by <actor>__<session>, so two
people writing on the same day produce different files. Git merges
trivially. The semantic memory uses content-hashed slugs, so two graduations
of similar rules don't collide either.
No. .agent/memory/personal/<actor>/profile.yaml is per-actor. On your
machine, your CLAUDE.md contains your preferences. On your teammate's
machine, their CLAUDE.md contains their preferences. Even though both
files are committed to the same git repo.
Because it's the only commit-time hook that runs before the commit
object is finalized, so the trailer becomes part of the actual commit
message (visible in git log forever). Post-commit hooks can't modify
the commit; pre-commit hooks run before the message is written.
Yes. In .agent/config.yaml:
adapters:
claude: true
cursor: false # don't generate .cursorrules
copilot: false # don't generate .github/copilot-instructions.md
opencode: falsedotagent sync then only writes CLAUDE.md.
- Base: ~5 MB (click, PyYAML, Jinja2, anthropic SDK).
-
[ml]extra: ~120 MB (sentence-transformers + sklearn + numpy) + ~22 MB model on first use. -
[server]extra: ~30 MB (fastapi + uvicorn + starlette). -
[watch]extra: ~1 MB (watchdog).
The Python parts do (Python 3.11+). The Cursor watcher uses pgrep which
isn't standard on Windows — file detection still works, but the
"is-Cursor-running" gate won't. Shell hooks are bash; on Windows use Git
Bash or WSL.
Yes. The dotagent repo is in fact set up as a dotagent project — see its
own .agent/ and CLAUDE.md. Useful for dogfooding.
dotagent restore-original # put back any backed-up AI configs
rm -rf .agent/ # remove all dotagent state
# manually remove hooks if you want:
rm -f .git/hooks/{pre-commit,post-commit,prepare-commit-msg}
rm -f .claude/hooks/post-tool.shYour docs/*.md are untouched — they were never managed by dotagent.
Because a graduated rule shapes every future AI coding session on every teammate's machine. Six months from now, when someone asks "why does the agent always X?", the rationale file is the answer. Without it, you have rules with no audit trail and no one can decide whether to keep, change, or retire them.
dotagent context # summary
dotagent context --format markdown # exactly what's rendered
cat CLAUDE.md # exactly what Claude Code readsgithub.com/dilawarabbas1/dotagent
Open an issue: github.com/dilawarabbas1/dotagent/issues.
Include the output of dotagent doctor --format json.
Repo · Issues · Changelog · License: MIT