Repository navigation
docs(agents): write agent docs in ASD-STE100 and remove misleading docs #3723
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
+607
−1,231
Merged
Changes from all commits
Commits
Show all changes
36 commits
Select commit
Hold shift + click to select a range
6fdac06
docs(agents): write agent docs in ASD-STE100 and anchor issue decisio…
thymikee 9c7c200
chore(repo): untrack the ignored device-evidence scratch files
thymikee fb5ce23
docs: delete three superseded plan and experiment notes
thymikee e6cc883
docs(contributing): validate the exact commit before pushing
thymikee daad89a
docs(agents): fold the test-harness glossary into CONTEXT.md and boun…
thymikee b099142
docs(agents): remove duplicate fixture, split, and validation rules
thymikee 47b5827
docs(agents): remove duplicate task routing and cleanup reminders
thymikee 4436ccd
docs(agents): write cli-flags.md in ASD-STE100
thymikee 85c3e93
docs(agents): write code-ownership.md in ASD-STE100
thymikee 405c013
docs(agents): write device-foldable.md in ASD-STE100
thymikee 2b25b94
docs(agents): write gates.md in ASD-STE100
thymikee d59c8ad
docs(agents): write pull-requests.md in ASD-STE100
thymikee b1ec402
docs(agents): write review.md in ASD-STE100
thymikee 4f0eac9
docs(agents): write selector-capture.md in ASD-STE100
thymikee bcbefb4
docs(agents): write test-audit.md in ASD-STE100
thymikee b14f8e8
docs(agents): write test-authoring.md in ASD-STE100
thymikee b94e9f7
docs(agents): write testing.md in ASD-STE100
thymikee 4e1582d
docs(agents): write triage-labels.md in ASD-STE100
thymikee 640defe
docs(agents): write web-backend.md in ASD-STE100
thymikee 8d97972
docs(agents): repoint the CLI flag input-schema owner
thymikee bbcfe32
docs(agents): drop the Xcode 27.1 availability notes from foldable ve…
thymikee fe7c5d5
docs(command-registry): keep the closed-contract rule for unmigrated …
thymikee b68ad29
docs: restore validation and measurement details dropped by the cleanup
thymikee b817835
docs(agents): fix review findings on owners, receipts, and ADR reading
thymikee 2ea407c
docs(agents): require a cross-provider review for bulk prose rewrites
thymikee bcfa707
docs(agents): route daemon trait declarations to the descriptor registry
thymikee 7aa00e1
docs(agents): stop routing foldable checks through devicectl device m…
thymikee ae382d1
docs(agents): delete duplicate flag-owner pointers
thymikee d3d8c02
docs(agents): restore the merge-readiness pointer for dependent PRs
thymikee 6da14ce
docs(agents): key Decision comments by topic and scope the Current st…
thymikee 1c54cea
docs(agents): name the result check and the failed-attempt cleanup scope
thymikee 11e033a
docs(agents): restore the Duo-only runtime note and mark the lit pane…
thymikee 2461bba
docs(agents): restore the daemon request-policy predicate owner row
thymikee 428e940
docs(agents): delete the duplicate experiment routes in testing and r…
thymikee cbd2120
docs(contributing): restore the dropped pnpm check and CI-only items
thymikee 31cb436
docs: fix two self-review findings on #3723
thymikee File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,61 +1,62 @@ | ||
| # AGENTS.md | ||
|
|
||
| `agent-device` is a CLI and daemon for automating devices and web targets. | ||
| `agent-device` is a CLI and daemon that automates devices and web targets. | ||
| The daemon owns sessions. Registry declarations route commands to platform runtimes. | ||
|
|
||
| ## Task routing | ||
|
|
||
| Read only the row for your current task. Follow further links only when they apply. | ||
| Read only the row for your current task. Follow other links only when they apply. | ||
|
|
||
| | When the task involves | Read | | ||
| | --- | --- | | ||
| | Domain vocabulary | `CONTEXT.md`, `docs/agents/domain.md` | | ||
| | Domain vocabulary | `CONTEXT.md` | | ||
| | Architecture decisions | `docs/adr/README.md` | | ||
| | Source changes, package boundaries, routing, diagnostics | `docs/agents/code-ownership.md` | | ||
| | Running checks or diagnosing a failed gate | `docs/agents/testing.md` | | ||
| | Writing or changing tests | `docs/agents/test-authoring.md` | | ||
| | Auditing or deleting tests | `docs/agents/test-audit.md` | | ||
| | Checks or a failed gate | `docs/agents/testing.md` | | ||
| | New or changed tests | `docs/agents/test-authoring.md` | | ||
| | Test audits or deletions | `docs/agents/test-audit.md` | | ||
| | Mutation experiments or base comparisons | `docs/agents/test-experiments.md` | | ||
| | Changing gate selection, fuzzing, or mutation harnesses | `docs/agents/gates.md` | | ||
| | Gate selection, fuzzing, or mutation harnesses | `docs/agents/gates.md` | | ||
| | Selector capture, polling, interaction fast paths, replay | `docs/agents/selector-capture.md` | | ||
| | Adding or changing a CLI flag | `docs/agents/cli-flags.md` | | ||
| | Opening or updating a PR | `docs/agents/pull-requests.md` | | ||
| | Reviewing a change | `docs/agents/review.md` | | ||
| | A new or changed CLI flag | `docs/agents/cli-flags.md` | | ||
| | A PR to open or update | `docs/agents/pull-requests.md` | | ||
| | A change to review | `docs/agents/review.md` | | ||
| | Device-facing changes or manual device verification | `docs/agents/device-verification.md` | | ||
| | Writing issues or PRDs, and triage labels | `docs/agents/issue-tracker.md`, `docs/agents/triage-labels.md` | | ||
| | Issues, PRDs, or triage labels | `docs/agents/issue-tracker.md`, `docs/agents/triage-labels.md` | | ||
| | Web backend setup or diagnostics | `docs/agents/web-backend.md` | | ||
|
|
||
| Device-facing changes affect live device behavior: dispatch, capture, interaction, app lifecycle, or native execution. | ||
| A daemon edit that changes none of these needs no device run. | ||
| A device-facing change affects live device behavior: dispatch, capture, interaction, app lifecycle, or native execution. | ||
| If a daemon edit changes none of these, a device run is not required. | ||
|
|
||
| Versioned CLI help owns command semantics. For app-driving startup, use the skill's routing card. | ||
| The versioned CLI help owns command semantics. To drive an app, start with the skill's routing card. | ||
|
|
||
| ## Working rules | ||
|
|
||
| - Keep edits within the requested command family or module group. Inspect other platforms only when the task requires it. | ||
| - Fix recurring failures at the owning type, registry, or construction path. Do not reconstruct another owner's state. | ||
| - Use typed reasons and details for behavior. Never match error text. | ||
| - Add compatibility or fallback behavior only when explicitly requested or approved. Remove superseded paths during migrations. | ||
| - Encode invariants in names, types, and boundaries. Comments explain public APIs, tool directives, or constraints code cannot express. | ||
| - Resolve gate failures at the reported invariant. Do not suppress them or add an allowlist to get a pass. | ||
| - Use `@agent-device/selectors` for selector parsing and matching. See `docs/agents/code-ownership.md` for other shared owners. | ||
| - Keep skills as routing cards. Keep `CONTEXT.md` glossary-only. Update owning help and user docs when behavior changes. | ||
| - Keep edits in the requested command family or module group. Examine other platforms only when the task requires it. | ||
| - Fix a recurring failure at the owning type, registry, or construction path. Do not rebuild another owner's state. | ||
| - Use typed reasons and details for behavior. Do not match error text. | ||
| - Add compatibility or fallback behavior only on explicit request or approval. During a migration, remove superseded paths. | ||
| - Encode invariants in names, types, and boundaries. Write comments only for public APIs, tool directives, or constraints that code cannot show. | ||
| - Resolve a gate failure at the reported invariant. Do not suppress it. Do not add an allowlist to get a pass. | ||
| - Use `@agent-device/selectors` to parse and match selectors. For other shared owners, see `docs/agents/code-ownership.md`. | ||
| - Keep skills as routing cards. Keep `CONTEXT.md` as a glossary only. When behavior changes, update the owning help and user docs. | ||
|
|
||
| ## Worktree setup | ||
|
|
||
| - Use `pnpm`. Use OXC for lint and format. Run `pnpm format` repository-wide. | ||
| - In a fresh worktree, run `pnpm install --frozen-lockfile && pnpm build` before testing. | ||
| - Preserve other worktrees, devices, sessions, dirty files, and experiments. | ||
| - Never copy `.env` into a worktree. For host credentials, source the main checkout's file by absolute path. | ||
| - Give parallel workers disjoint files and distinct devices. `pnpm check:affected --run` and `pnpm check` serialize automatically. | ||
| - The layering scan reads tracked files. Stage new modules before trusting its result. | ||
| - Move a path's Fallow baseline entry when renaming its file. Do not regenerate unrelated baselines. | ||
| - Use `pnpm`. Use OXC to lint and format. Run `pnpm format` on the full repository. | ||
| - In a new worktree, run `pnpm install --frozen-lockfile && pnpm build` before you test. | ||
| - Do not change other worktrees, devices, sessions, dirty files, or experiments. Do not use `git stash`; all worktrees share it. | ||
| - Do not copy `.env` into a worktree. For host credentials, source the main checkout's file by its absolute path. | ||
| - Give each parallel worker different files and a different device. `pnpm check:affected --run` and `pnpm check` run one at a time automatically. | ||
| - The layering scan reads only tracked files. Stage new modules before you trust its result. | ||
| - When you rename a file, move its Fallow baseline entry. Do not regenerate unrelated baselines. | ||
|
|
||
| The validation lock reclaims provably dead owners automatically. Unknown owners remain blocking. | ||
| If waiting times out, report the printed owner and lock state; do not remove it by hand. | ||
| The validation lock automatically reclaims owners that are provably dead. An unknown owner continues to block. | ||
| If the wait times out, report the printed owner and the lock state. Do not remove the lock manually. | ||
|
|
||
| ## Agent docs | ||
|
|
||
| Write short instructions with one action per sentence. Put the condition before its action. | ||
| Use the same term for the same concept. Keep commands and domain terms exact. | ||
| Route specialized rules to their task document. Delete duplicate or enforced rules before adding reminders. | ||
| Write agent docs in ASD-STE100. Write one instruction in each sentence. | ||
| Put the condition before the instruction. Use one term for one concept. | ||
| Keep commands and domain terms exact. Put specialized rules and new shared constraints in the owning task document, not in agent memory. | ||
| Before you add a reminder, delete duplicate or enforced rules. | ||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.