diff --git a/.codex/AGENTS.md b/.codex/AGENTS.md index a32ccaa..f444bf1 100644 --- a/.codex/AGENTS.md +++ b/.codex/AGENTS.md @@ -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 `. - CI: `gh run list/view` (rerun/fix til green). - Prefer end-to-end verify; if blocked, say what’s 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/.md` (one file per agent) +- `docs/subagents/archive//` (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/.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 + Avoid “AI slop” UI. Be opinionated + distinctive. diff --git a/.codex/config.toml##os.Linux b/.codex/config.toml##os.Linux index a540a1a..cf4d723 100644 --- a/.codex/config.toml##os.Linux +++ b/.codex/config.toml##os.Linux @@ -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" diff --git a/.codex/docs/subagents/INDEX.md b/.codex/docs/subagents/INDEX.md new file mode 100644 index 0000000..347d097 --- /dev/null +++ b/.codex/docs/subagents/INDEX.md @@ -0,0 +1,7 @@ +# Subagents Index + +Read first. Keep concise. + +| agent_id | alias | mission | status | file | last_update_utc | +| --- | --- | --- | --- | --- | --- | +| `` | `` | `` | `planning` | `docs/subagents/agents/.md` | `` | diff --git a/.codex/docs/subagents/agents/TEMPLATE.md b/.codex/docs/subagents/agents/TEMPLATE.md new file mode 100644 index 0000000..918d6fc --- /dev/null +++ b/.codex/docs/subagents/agents/TEMPLATE.md @@ -0,0 +1,27 @@ +# Agent: + +- alias: +- mission: +- status: +- branch: +- started_at: +- heartbeat_minutes: + +## 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 +- ... diff --git a/.codex/docs/subagents/archive/.gitkeep b/.codex/docs/subagents/archive/.gitkeep new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/.codex/docs/subagents/archive/.gitkeep @@ -0,0 +1 @@ + diff --git a/.codex/docs/subagents/collaboration.md b/.codex/docs/subagents/collaboration.md new file mode 100644 index 0000000..98ea3b7 --- /dev/null +++ b/.codex/docs/subagents/collaboration.md @@ -0,0 +1,5 @@ +# Subagents Collaboration + +Shared notes. Append-only. + +- [YYYY-MM-DDTHH:MM:SSZ] [agent_id|alias] note, question, dependency, conflict, decision. diff --git a/.config/opencode/AGENTS.md b/.config/opencode/AGENTS.md deleted file mode 100644 index a32ccaa..0000000 --- a/.config/opencode/AGENTS.md +++ /dev/null @@ -1,106 +0,0 @@ -# AGENTS.MD - -Work style: telegraph; noun-phrases ok; drop grammar; min tokens. - -## Agent Protocol - -- Contact: Kyle Yasuda (@sudacode, ). -- 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 `. -- CI: `gh run list/view` (rerun/fix til green). -- Prefer end-to-end verify; if blocked, say what’s missing. -- New deps: quick health check (recent releases/commits, adoption). -- Slash cmds: `~/.codex/prompts/`. -- Web: search early; quote exact errors; prefer 2024–2025 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 repo’s 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`, …). -- Don’t 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, that’s fine (hint, not hard guardrail). -- If user types a command (“pull and push”), that’s 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`. - - -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: 1–2 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. - diff --git a/.config/opencode/AGENTS.md b/.config/opencode/AGENTS.md new file mode 120000 index 0000000..76a3e20 --- /dev/null +++ b/.config/opencode/AGENTS.md @@ -0,0 +1 @@ +../../.codex/AGENTS.md \ No newline at end of file diff --git a/.config/opencode/commands/implement-backlog-task.md b/.config/opencode/commands/implement-backlog-task.md new file mode 100644 index 0000000..f753c6b --- /dev/null +++ b/.config/opencode/commands/implement-backlog-task.md @@ -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. diff --git a/.config/opencode/opencode.json b/.config/opencode/opencode.json index bdbdf70..e52f9a5 100644 --- a/.config/opencode/opencode.json +++ b/.config/opencode/opencode.json @@ -99,7 +99,8 @@ "pnpm *": "allow", "rm *": "deny", "grep *": "allow", - "wc *": "allow" + "wc *": "allow", + "date *": "allow" }, "external_directory": { "*": "ask",