Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 0 additions & 4 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,6 @@ papers/
# no newcomer-mode defaults). See AGENTS.md and modes/maintainer.md.
.maintainer

# Interaction-mode override — optional per-clone file containing `teacher` or
# `assistant`. See AGENTS.md "Modes". `.maintainer` outranks it.
.mode

# Claude Code agent worktrees — ephemeral, machine-local.
.claude/worktrees/

Expand Down
10 changes: 6 additions & 4 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -102,10 +102,12 @@ how it paces the work, not which workflows exist:
execute with checkpoints — proactive but not silent; state in `wiki/project/`. The dial is
in [`modes/assistant.md`](./modes/assistant.md) "The autonomy dial".

Select (first match): explicit instruction → `.mode` file → `profile.md` "Interaction mode" →
else **infer from the opening request** (fall back to **assistant**); `.maintainer` outranks
`.mode`. State an inferred mode in one line and invite correction; acknowledge an explicit
one only if it changes behavior. Read `modes/<mode>.md`; depth still follows
Select (first match): explicit instruction → `profile.md` "Interaction mode" → else **infer
from the opening request** (fall back to **assistant**); `.maintainer` outranks both. There
are exactly two mode names — a value that isn't one of them (e.g. `agent`, removed in July
2026) is **not** a mode: ignore it, say so in one line, and fall through to inference rather
than improvising. State an inferred mode in one line and invite correction; acknowledge an
explicit one only if it changes behavior. Read `modes/<mode>.md`; depth still follows
`skills/_style.md` "Adaptive depth".

---
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@ manage an end-to-end lens modeling project directly on your machine. See
The assistant works in two modes, and you never have to choose one — it **infers the mode
from your first message and tells you which it picked** (e.g. *"Mode: teacher — I'll explain
as we go."*). If it guesses wrong, just say so. To set the mode yourself, start your message
with it (the examples below do exactly that); to make a choice permanent, drop a `.mode` file
in the repo containing `teacher` or `assistant`.
with it (the examples below do exactly that); to make a choice permanent, record it under
"Interaction mode" in `wiki/project/profile.md`.

- **Teacher** — *learn the workflow.* `Teacher mode: I'm new to PyAutoLens — how do I model this image?`
- **Assistant** — *do the workflow.* `Assistant mode: set up a project for this dataset and write the first script.`
Expand Down
2 changes: 1 addition & 1 deletion modes/maintainer.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ generalise anything pre-emptively; just avoid entangling the two sides.
**Generic assistant infrastructure** (clones to any domain assistant near-verbatim):
`AGENTS.md`'s skeleton (session start, safety invariants, three-layer model, mode
selection, source-of-truth resolution, commit cadence), the Teacher/Assistant mode model
and `modes/` machinery (`.mode`, `.maintainer` sentinels), the skills framework
and `modes/` machinery (the `.maintainer` sentinel), the skills framework
(`_style.md`, `_bootstrap_skill.md`, the README index conventions), the
`core`/`literature`/`project` wiki split and its read-only/update rules, the science-project
lifecycle (`start-new-project`, `contribute-upstream`), `sources.yaml` + the source
Expand Down
Loading
Loading