Repository navigation
Agents ask before they act, tickets tell the whole story, and the agents read as a team - #55
Merged
Merged
Conversation
…nts read as a team Questions and approvals - An agent can ask the human (ask_human, with suggested answers) or ask for an OK before a step that sends, pays or deletes something nobody asked for (request_approval). The run stands still instead of pretending to be done; the human is notified and answers with one click in the chat, the inbox, the task, the phone, or by replying in Slack, Telegram or Teams (only the person marked as the owner can answer there). The run continues where it stopped; stopping it withdraws the question. - Migration 50: questions table, messaging_users.is_owner. Tickets - Priority, due date and labels on every ticket; urgent ones start first and the agent is told the deadline. Filters by them on the board. - A timeline per ticket: every delivery with its result, feedback, notes agents leave (task_note), blocks, pull requests, questions and answers. - Blocked says why (needs input, failed, stopped, cut off by a restart) and offers the matching way on; a ticket whose agent set a follow-up waits instead of landing in review; what each ticket cost and how long the agent worked. Approve / Request changes / Reopen in one click. - Agents: task_get, task_message, task_note; richer task_create/update. - Migration 51: ticket columns, task_events. Team - Every agent has a role and a lead (the built-in agent leads by default); agents are told who does what and who they report to. Reporting lines grant nothing; reach and permissions are unchanged. - Org chart on the Agents page, "Needs you" filter, truthful status (Working in 2 chats, Queued, Needs your answer, Last run failed with a link to the run and Dismiss), "On its plate" on the agent page. - Handoffs both ways: the handoff card opens the teammate's chat, the handed-over chat links back. Messages from automations, the board or other agents are labelled, never shown as the human's. - Duplicate an agent; no new chats with a switched-off agent (and a Switch on bar in its chats); the app learns active runs on connect. - Migration 53: agents.role / reports_to / failed_run_id, messages.source, and a backfill that also runs after a restore.
# Conflicts: # apps/desktop/src/components/agents/agent-form.tsx # apps/desktop/src/components/chat/message-blocks.tsx # apps/desktop/src/components/chat/thread.tsx # apps/desktop/src/lib/api.ts # packages/core/src/db/migrations.ts # packages/core/src/runner/runner.ts # packages/core/src/runner/stream.ts # packages/core/src/server/ws.ts # packages/core/src/services/followups.ts # packages/core/src/tasks/service.ts # packages/core/test/fixtures/fake-claude.ts
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Questions and approvals
for an OK before a step that sends, pays or deletes something nobody
asked for (request_approval). The run stands still instead of pretending
to be done; the human is notified and answers with one click in the
chat, the inbox, the task, the phone, or by replying in Slack, Telegram
or Teams (only the person marked as the owner can answer there). The run
continues where it stopped; stopping it withdraws the question.
Tickets
and the agent is told the deadline. Filters by them on the board.
agents leave (task_note), blocks, pull requests, questions and answers.
and offers the matching way on; a ticket whose agent set a follow-up
waits instead of landing in review; what each ticket cost and how long
the agent worked. Approve / Request changes / Reopen in one click.
Team
agents are told who does what and who they report to. Reporting lines
grant nothing; reach and permissions are unchanged.
(Working in 2 chats, Queued, Needs your answer, Last run failed with a
link to the run and Dismiss), "On its plate" on the agent page.
handed-over chat links back. Messages from automations, the board or
other agents are labelled, never shown as the human's.
Switch on bar in its chats); the app learns active runs on connect.
messages.source, and a backfill that also runs after a restore.
Checks
pnpm typecheck: all packages passMigrations are 50, 51 and 53 (main already has 30 and 40).