Audit of 3560327
This commit is contained in:
@@ -7,7 +7,7 @@ A server and macOS app for running many coding agents (Claude Code, Codex and An
|
||||
- **Tasks.** Each task gets its own git worktree, branch and port block. Talk to its agent in a live transcript; messages sent mid-turn reach it after its next tool call.
|
||||
- **Lead agent.** One long-running agent per user watches every task, tells you what needs you, points the right pane at it, and starts, messages, merges or discards tasks when you ask. It keeps notes on how you work and passes them to task agents.
|
||||
- **Questions.** Agents ask structured questions with a recommended answer; you answer by clicking. Each question shows in the transcript where it was asked, and clicking it shows it again with your answer. macOS notifications for questions, turn summaries and errors.
|
||||
- **Cross-vendor reviews.** Every turn that changes files is snapshotted and reviewed by the other vendor's model. Findings go back to the agent, and you can fix or ignore each one.
|
||||
- **Reviews.** Choose a review workflow for each project. Its reviewers check the task's work after each turn that changes files. Findings go back to the agent, and you can fix or ignore each one.
|
||||
- **Snapshots and forks.** Step through a task's snapshots, diff any of them, and fork a new task from any one, conversation included.
|
||||
- **Merge.** One click: the agent merges main in and resolves conflicts, then byre squashes, pushes and closes the task, with co-author trailers and a git note recording the task. Merge after review, and one merge per project at a time with a queue.
|
||||
- **Subtasks and teams.** Agents can spawn subtasks on their own branches and merge them back, or several agents can share one worktree and talk through a board.
|
||||
|
||||
+1
-4
@@ -8,8 +8,6 @@ State lives in the directory given by `byre serve --data`, by default `~/Library
|
||||
|
||||
Migrations are the files in `internal/store/migrations/` (`NNN-name.sql`), plus Go data migrations in `goMigrations`. The number only orders; a migration is identified by its name. A migration's SQL is fixed once applied anywhere: write it out in full rather than sharing Go constants that later change. byre is deployed from task branches that each add their own migrations, so after a merge a migration can land before others the database has already applied, and it still runs. Give a new migration a name no other branch will use, and make any data migration safe to run twice. `sqlite3 byre.db 'SELECT * FROM migrations'` lists what has been applied.
|
||||
|
||||
`agent.tool_result` content dominates the event log's size, and the app loads every active task's whole history at startup. `sqlite3 byre.db "SELECT kind, count(*), sum(length(payload)) FROM events GROUP BY kind ORDER BY 3 DESC"` shows the split.
|
||||
|
||||
## Worktrees
|
||||
|
||||
byre runs nothing in a new worktree. Installing dependencies or copying untracked files such as `.env` is the project's own instruction in its AGENTS.md, carried out by the agent with its own tools.
|
||||
@@ -82,13 +80,12 @@ A model's name picks its vendor: `gpt-*` runs on Codex, `gemini-*` on Antigravit
|
||||
|
||||
- A turn whose final message asks the human something in prose is bounced once, telling the agent to use `ask_human`. For Claude the bounce is a Stop hook that blocks the stop; Claude Code reports the block as a "Stop hook error" notification, which is expected. An agent told explicitly to ask in plain text will refuse the bounce.
|
||||
- A turn's final message is its summary. There is no report tool: models write a closing recap whatever they are told, so byre uses it rather than asking for a second one.
|
||||
- Reviews ride along for the human to look at; nothing waits for one. Every review covers the whole task against the default branch, so a newer one makes older ones moot.
|
||||
- A review covers the whole task against the default branch, so a newer one makes older ones moot. Findings reach the task's agent together, once the whole review workflow finishes; an individual reviewer finishing is not a completed review.
|
||||
- An audit checks only the newest commit of the default branch, one at a time per project, so it doesn't run on every revision but the newest one is always audited eventually. byre never fetches for an audit, so a commit pushed outside byre is audited only once a byre merge has fetched it.
|
||||
- A workflow definition is never changed once written: a save writes a new one, so freezing a workflow for a run is keeping the definition's id.
|
||||
- The lead's `show` is refused for a few seconds after the human moves the pane, and only a refusal arranges the "hold is over" signal, so the lead's prompt tells it to call `show` at once whenever it wants to show something, never holding back in expectation of a refusal.
|
||||
- A team task that comes up with some members failing to start isn't repaired; discard it and create it again.
|
||||
- There is no closed-task list in the UI; the human asks the lead.
|
||||
- A project's `TODO.md` is read from its default branch, so it shows what has been merged, not uncommitted edits in the checkout.
|
||||
- Nothing sets an inbox item's `superseded` state; it stays in the spec because old items hold it.
|
||||
|
||||
## git
|
||||
|
||||
+2
-2
@@ -1231,7 +1231,7 @@ footer {
|
||||
</details></li>
|
||||
|
||||
<li class="wide cyan"><details name="feature">
|
||||
<summary><h3>Cross-vendor reviews</h3><p>Every turn that changes files is reviewed by the other vendor's model. The agent fixes the findings it agrees with on its own and says why it skips the rest; you can overrule any of them with a click.</p><span class="more"></span></summary>
|
||||
<summary><h3>Reviews</h3><p>Choose a review workflow for each project. Its reviewers check the task's work after each turn that changes files. The agent fixes the findings it agrees with on its own and says why it skips the rest; you can overrule any of them with a click.</p><span class="more"></span></summary>
|
||||
<div class="detail">
|
||||
<div class="fig" aria-hidden="true">
|
||||
<div class="flow"><span class="chip">Claude Code turn</span><span class="arrow">→</span><span class="chip">snapshot 3</span><span class="arrow">→</span><span class="chip on">Codex review</span><span class="arrow">→</span><span class="chip">agent triages</span></div>
|
||||
@@ -1244,7 +1244,7 @@ footer {
|
||||
</div>
|
||||
</div>
|
||||
<ul class="points">
|
||||
<li><strong>A second opinion.</strong> Each turn that changes files is read by the other vendor's model.</li>
|
||||
<li><strong>A second opinion.</strong> Your chosen reviewers check the task's work after each turn that changes files.</li>
|
||||
<li><strong>Triaged for you.</strong> The agent fixes what holds up and explains what it leaves.</li>
|
||||
<li><strong>Your call.</strong> Overrule any finding it skipped with one click and it gets fixed.</li>
|
||||
</ul>
|
||||
|
||||
Reference in New Issue
Block a user