This commit is contained in:
2026-02-19 00:32:52 -08:00
parent 880609c59e
commit e37f3dd7b1
9 changed files with 120 additions and 108 deletions

View File

@@ -14,7 +14,8 @@ Work style: telegraph; noun-phrases ok; drop grammar; min tokens.
- Bugs: add regression test when it fits.
- Keep files <~500 LOC; split/refactor as needed.
- Commits: Conventional Commits (`feat|fix|refactor|build|ci|chore|docs|style|perf|test`).
- Subagents: read `docs/subagent.md`.
- Subagents: read [Subagent Coordination Protocol](#subagent-coordination-protocol).
- If `Backlog.md` is set up for the project, each task must be associated with a ticket on the backlog. Create a new ticket on the board if it does not already exist
- Editor: `code <path>`.
- CI: `gh run list/view` (rerun/fix til green).
- Prefer end-to-end verify; if blocked, say whats missing.
@@ -28,6 +29,56 @@ Work style: telegraph; noun-phrases ok; drop grammar; min tokens.
- Blog repo: `~/projects/sudacode-blog`
- Obsidian Vault: `~/S/obsidian/Vault` (e.g. `mac-studio.md`, `mac-vm.md`)
## Subagent Coordination Protocol (`docs/subagents/`)
Purpose: multi-agent coordination across runs; single-agent continuity during long runs.
Layout:
- `docs/subagents/INDEX.md` (active agents table)
- `docs/subagents/collaboration.md` (shared notes)
- `docs/subagents/agents/<agent_id>.md` (one file per agent)
- `docs/subagents/archive/<yyyy-mm>/` (archived histories)
Required behavior (all agents):
1. At run start, read in order:
- `docs/subagents/INDEX.md`
- `docs/subagents/collaboration.md`
- your own file: `docs/subagents/agents/<agent_id>.md`
2. Identify self by stable `agent_id` (runner/env-provided). If missing, create own file from template.
3. Maintain `alias` (short human-readable label) + `mission` (one-line focus).
4. Before coding:
- record intent, planned files, assumptions in your own file.
5. During run:
- update on phase changes (plan -> edit -> test -> handoff),
- heartbeat at least every `HEARTBEAT_MINUTES` (default 20),
- update your own row in `INDEX.md` (`status`, `last_update_utc`),
- append cross-agent notes in `collaboration.md` when needed.
6. Write limits:
- MAY edit own file.
- MAY append to `collaboration.md`.
- MAY edit only own row in `INDEX.md`.
- MUST NOT edit other agent files.
7. At run end:
- record files touched, key decisions, assumptions, blockers, next step for handoff.
8. Conflict handling:
- if another agent touched your target files, add conflict note in `collaboration.md` before continuing.
9. Brevity:
- terse bullets; factual; no long prose.
Suggested env vars:
- `AGENT_ID` (required)
- `AGENT_ALIAS` (required)
- `HEARTBEAT_MINUTES` (optional, default 20)
Suggested env vars:
- `AGENT_ID` (required)
- `AGENT_ALIAS` (required)
- `HEARTBEAT_MINUTES` (optional, default 20)
## Docs
- Keep notes short; update docs when behavior/API changes (no ship w/o docs).
@@ -92,6 +143,8 @@ Read `~/projects/agent-scripts/tools.md` for the full tool catalog if it exists.
- Use only when you need persistence/interaction (debugger/server).
- Quick refs: `tmux new -d -s codex-shell`, `tmux attach -t codex-shell`, `tmux list-sessions`, `tmux kill-session -t codex-shell`.
## Frontend Aesthetics
<frontend_aesthetics>
Avoid “AI slop” UI. Be opinionated + distinctive.

View File

@@ -32,3 +32,9 @@ trust_level = "trusted"
[projects."/home/sudacode/.config/mpv/script-opts"]
trust_level = "trusted"
[projects."/home/sudacode/projects/japanese/SubMiner/texthooker-ui"]
trust_level = "trusted"
[projects."/home/sudacode/.config/opencode/commands"]
trust_level = "trusted"

View File

@@ -0,0 +1,7 @@
# Subagents Index
Read first. Keep concise.
| agent_id | alias | mission | status | file | last_update_utc |
| --- | --- | --- | --- | --- | --- |
| `<agent_id>` | `<alias>` | `<mission>` | `planning` | `docs/subagents/agents/<agent_id>.md` | `<UTC ISO>` |

View File

@@ -0,0 +1,27 @@
# Agent: <agent_id>
- alias: <short label>
- mission: <one-line focus>
- status: <planning|editing|testing|blocked|handoff|done>
- branch: <name>
- started_at: <UTC ISO>
- heartbeat_minutes: <n>
## Current Work (newest first)
- [YYYY-MM-DDTHH:MM:SSZ] intent: ...
- [YYYY-MM-DDTHH:MM:SSZ] progress: ...
- [YYYY-MM-DDTHH:MM:SSZ] test: ...
- [YYYY-MM-DDTHH:MM:SSZ] handoff: ...
## Files Touched
- `path/to/file`
- `path/to/another`
## Assumptions
- ...
## Open Questions / Blockers
- ...
## Next Step
- ...

View File

@@ -0,0 +1 @@

View File

@@ -0,0 +1,5 @@
# Subagents Collaboration
Shared notes. Append-only.
- [YYYY-MM-DDTHH:MM:SSZ] [agent_id|alias] note, question, dependency, conflict, decision.

View File

@@ -1,106 +0,0 @@
# AGENTS.MD
Work style: telegraph; noun-phrases ok; drop grammar; min tokens.
## Agent Protocol
- Contact: Kyle Yasuda (@sudacode, <suda@sudacode.com>).
- Workspace: `~/Projects`.
- “MacBook Air” / “Mac Mini” => SSH there; find hosts/IPs via `tailscale status`.
- PRs: use `gh pr view/diff` (no URLs).
- “Make a note” => edit AGENTS.md (shortcut; not a blocker). Ignore `CLAUDE.md`.
- No `./runner`. Guardrails: use `trash` for deletes.
- Need upstream file: stage in `/tmp/`, then cherry-pick; never overwrite tracked.
- Bugs: add regression test when it fits.
- Keep files <~500 LOC; split/refactor as needed.
- Commits: Conventional Commits (`feat|fix|refactor|build|ci|chore|docs|style|perf|test`).
- Subagents: read `docs/subagent.md`.
- Editor: `code <path>`.
- CI: `gh run list/view` (rerun/fix til green).
- Prefer end-to-end verify; if blocked, say whats missing.
- New deps: quick health check (recent releases/commits, adoption).
- Slash cmds: `~/.codex/prompts/`.
- Web: search early; quote exact errors; prefer 20242025 sources; fallback Firecrawl (`pnpm mcp:*`) / `mcporter`.
- Style: telegraph. Drop filler/grammar. Min tokens (global AGENTS + replies).
## Important Locations
- Blog repo: `~/projects/sudacode-blog`
- Obsidian Vault: `~/S/obsidian/Vault` (e.g. `mac-studio.md`, `mac-vm.md`)
## Docs
- Keep notes short; update docs when behavior/API changes (no ship w/o docs).
- Add `read_when` hints on cross-cutting docs.
## PR Feedback
- Active PR: `gh pr view --json number,title,url --jq '"PR #\\(.number): \\(.title)\\n\\(.url)"'`.
- PR comments: `gh pr view …` + `gh api …/comments --paginate`.
- Replies: cite fix + file/line; resolve threads only after fix lands.
- When merging a PR: thank the contributor in `CHANGELOG.md`.
## Flow & Runtime
- Use repos package manager/runtime; no swaps w/o approval.
- Use Codex background for long jobs; tmux only for interactive/persistent (debugger/server).
## Build / Test
- Before handoff: run full gate (lint/typecheck/tests/docs).
- CI red: `gh run list/view`, rerun, fix, push, repeat til green.
- Keep it observable (logs, panes, tails, MCP/browser tools).
- Release: read `docs/RELEASING.md` (or find best checklist if missing).
## Git
- Safe by default: `git status/diff/log`. Push only when user asks.
- `git checkout` ok for PR review / explicit request.
- Branch changes require user consent.
- Destructive ops forbidden unless explicit (`reset --hard`, `clean`, `restore`, `rm`, …).
- Dont delete/rename unexpected stuff; stop + ask.
- No repo-wide S/R scripts; keep edits small/reviewable.
- Avoid manual `git stash`; if Git auto-stashes during pull/rebase, thats fine (hint, not hard guardrail).
- If user types a command (“pull and push”), thats consent for that command.
- No amend unless asked.
- Big review: `git --no-pager diff --color=never`.
- Multi-agent: check `git status/diff` before edits; ship small commits.
## Language/Stack Notes
- Swift: use workspace helper/daemon; validate `swift build` + tests; keep concurrency attrs right.
- TypeScript: use repo PM; keep files small; follow existing patterns.
## macOS Permissions / Signing (TCC)
- Never re-sign / ad-hoc sign / change bundle ID as “debug” without explicit ok (can mess TCC).
## Critical Thinking
- Fix root cause (not band-aid).
- Unsure: read more code; if still stuck, ask w/ short options.
- Conflicts: call out; pick safer path.
- Unrecognized changes: assume other agent; keep going; focus your changes. If it causes issues, stop + ask user.
- Leave breadcrumb notes in thread.
## Tools
Read `~/projects/agent-scripts/tools.md` for the full tool catalog if it exists.
### tmux
- Use only when you need persistence/interaction (debugger/server).
- Quick refs: `tmux new -d -s codex-shell`, `tmux attach -t codex-shell`, `tmux list-sessions`, `tmux kill-session -t codex-shell`.
<frontend_aesthetics>
Avoid “AI slop” UI. Be opinionated + distinctive.
Do:
- Typography: pick a real font; avoid Inter/Roboto/Arial/system defaults.
- Theme: commit to a palette; use CSS vars; bold accents > timid gradients.
- Motion: 12 high-impact moments (staggered reveal beats random micro-anim).
- Background: add depth (gradients/patterns), not flat default.
Avoid: purple-on-white clichés, generic component grids, predictable layouts.
</frontend_aesthetics>

1
.config/opencode/AGENTS.md Symbolic link
View File

@@ -0,0 +1 @@
../../.codex/AGENTS.md

View File

@@ -0,0 +1,17 @@
---
description: Implement a task from Backlog.md end-to-end
agent: build
model: openai/gpt-5.3-codex
---
If there is a backlog folder and/or `Backlog.md` is set up in the repository
then do the following:
Use the provided task number or context for a task, read the full contents of
the task from the `Backlog.md` board using the MCP server if available. If the
backlog has not been initialized then initialize the backlog in a
non-interactive way.
Once you have the necessary context, use the writing-plans skill to write a plan
to execute the task end-to-end (minus the commit) and then use the executing-plans skill to execute the plan.
Use parallel subagents where possible.

View File

@@ -99,7 +99,8 @@
"pnpm *": "allow",
"rm *": "deny",
"grep *": "allow",
"wc *": "allow"
"wc *": "allow",
"date *": "allow"
},
"external_directory": {
"*": "ask",