# Get Things Flowing, on Flow > A method for getting work done with agents, based on GTD, and the task graph it runs on, served over MCP. The person decides; the agent proposes. The graph is the record. MCP endpoint: https://flow.ttoss.dev/mcp If you are an agent working for someone, read the agent protocol first: https://flow.ttoss.dev/docs/agents/protocol.md The whole method in one file: https://flow.ttoss.dev/docs/llms-full.txt ## The method - [Introduction](https://flow.ttoss.dev/docs/index.md): What Flow is, the method it is built for, and where to start reading. - [Quickstart](https://flow.ttoss.dev/docs/start/connect.md): Point your agent at Flow, make a project, and run the whole loop once. About five minutes. - [How Flow works](https://flow.ttoss.dev/docs/start/concepts.md): The records Flow keeps, what it computes from them on every read, and the two writes it refuses. - [Principles](https://flow.ttoss.dev/docs/method/principles.md): Nine rules that decide almost every question the method raises. The rest of the method applies them. - [The person and the agent](https://flow.ttoss.dev/docs/method/roles.md): Who does what in each move, what an agent needs your word for, and how to delegate a whole class of decisions at once. - [The loop](https://flow.ttoss.dev/docs/method/loop.md): Six moves, what each one produces, and why they don't run in order. - [Capture](https://flow.ttoss.dev/docs/method/capture.md): Write it down with where it came from, and decide nothing yet. - [Clarify](https://flow.ttoss.dev/docs/method/clarify.md): Decide what a capture is and whether it is a commitment. The agent proposes, the person decides. - [Connect](https://flow.ttoss.dev/docs/method/connect.md): Say what each piece of work truly waits on, and nothing else. Readiness follows from that. - [Engage](https://flow.ttoss.dev/docs/method/engage.md): Start from the computed ready set, work one task, and write the result back before the agent run ends. - [Review](https://flow.ttoss.dev/docs/method/review.md): Confirm that what the graph says is still true in the world. The agent confirms what it checked; the person decides every change. - [Sessions](https://flow.ttoss.dev/docs/practice/sessions.md): The daily shape of the method. What to say at the start of a session, at the end, and once a week. - [Reading the graph](https://flow.ttoss.dev/docs/practice/graph.md): What the console's graph draws. A node's colour, shape and size, the holder and age under its title, and the four strokes an edge can have. - [Agent protocol](https://flow.ttoss.dev/docs/agents/protocol.md): The whole method as numbered rules an agent follows, each linking to the reasoning behind it. - [Instructions](https://flow.ttoss.dev/docs/agents/instructions.md): The protocol condensed into the text Flow's MCP server hands every client at connect, and that you can paste into CLAUDE.md or AGENTS.md. ## Vocabulary - [Vocabulary](https://flow.ttoss.dev/docs/vocabulary.md): every status, edge, state and kind, with the allowed status moves. - [Vocabulary as JSON](https://flow.ttoss.dev/docs/vocabulary.json) ## Examples Each is an end-to-end test, run against a listening server on every pull request. What the page shows is what that run executed. - [An endpoint your app posts to](https://flow.ttoss.dev/docs/examples/an-endpoint-for-an-app.md): Give a system a URL of its own. What it sends lands in your inbox, filtered and stamped the way you configured, and it can do nothing else. - [Break a feature into work several agents can pick up at once](https://flow.ttoss.dev/docs/examples/break-a-feature-into-waves.md): Say what a piece truly waits on and nothing else, and the order tells you how many agents you can start right now. - [Capture now, decide later](https://flow.ttoss.dev/docs/examples/capture-then-triage.md): Write down what arrived, with where it came from, and decide nothing. Triage is the one decision, and the capture stays as it arrived. - [Decide, then build](https://flow.ttoss.dev/docs/examples/decide-then-build.md): A choice that holds up several pieces of work is written once, as a decision beside the work it holds, and the answer is what starts all of it. - [File a milestone and see what still stands before it](https://flow.ttoss.dev/docs/examples/file-a-milestone.md): Name the goal, point the work at it, and "what is left before we get there" is a query rather than a list somebody keeps up to date. - [Name a target, and let the agent finish it](https://flow.ttoss.dev/docs/examples/pursue-a-target.md): Ask once: the agent works through everything before the target, closes what you let it close, and stops at the first choice that is yours. - [Recover after two weeks away, however full the inbox got](https://flow.ttoss.dev/docs/examples/recover-after-an-absence.md): Come back from a gap and find what is on fire, and the one step that gets you back in control, without wading through everything that piled up while you were gone. - [Retract evidence and find everything that leaned on it](https://flow.ttoss.dev/docs/examples/retract-evidence-and-find-dependents.md): A source turns out to be wrong, and every commitment that cited it as basis surfaces on its own — nobody has to remember what they built on top of it, or go looking. - [See what the work cost, and where the money went](https://flow.ttoss.dev/docs/examples/see-what-the-work-cost.md): Every agent run records what it spent and the tasks it worked on, so what a milestone cost is a query, and the spend that reached no task shows up beside it. - [Share a project, and nothing else](https://flow.ttoss.dev/docs/examples/sharing-a-project.md): A member sees everything in the project and nothing outside it — enforced by the query, not by a check somebody has to remember. - [Take work, so nobody else starts it](https://flow.ttoss.dev/docs/examples/take-work-so-nobody-duplicates-it.md): Two people — or two agents — never both build the same thing: an agent takes a task in the run it records, a person by taking it on, and the second one to try is told who has it. ## Reference One page per operation. The REST call and the MCP tool are derived from the same spec, so they cannot disagree. - [accept-invitation](https://flow.ttoss.dev/docs/reference/accept-invitation.md): Accept an invitation - [add-project-member](https://flow.ttoss.dev/docs/reference/add-project-member.md): Add somebody to a project - [confirm-task](https://flow.ttoss.dev/docs/reference/confirm-task.md): Confirm a commitment is still true - [create-ingest-endpoint](https://flow.ttoss.dev/docs/reference/create-ingest-endpoint.md): Publish a URL something else can post into the inbox - [create-project](https://flow.ttoss.dev/docs/reference/create-project.md): Create a project - [create-team](https://flow.ttoss.dev/docs/reference/create-team.md): Create a team in a project - [decline-invitation](https://flow.ttoss.dev/docs/reference/decline-invitation.md): Decline an invitation - [get-ingest-endpoint](https://flow.ttoss.dev/docs/reference/get-ingest-endpoint.md): One endpoint, and the deliveries its rules dropped - [get-next](https://flow.ttoss.dev/docs/reference/get-next.md): The ready set, ranked — or any slice of open work you ask for - [get-order](https://flow.ttoss.dev/docs/reference/get-order.md): The blocks DAG in topological waves - [get-project](https://flow.ttoss.dev/docs/reference/get-project.md): Read one project, with its members and teams - [getSnapshot (REST only)](https://flow.ttoss.dev/docs/reference/get-snapshot.md): The rows a graph is drawn from - [get-task](https://flow.ttoss.dev/docs/reference/get-task.md): Read one task with everything hanging off it - [ingest-capture](https://flow.ttoss.dev/docs/reference/ingest-capture.md): Ingest something with no decision taken yet - [list-agent-runs](https://flow.ttoss.dev/docs/reference/list-agent-runs.md): List runs and what they cost - [list-captures](https://flow.ttoss.dev/docs/reference/list-captures.md): The inbox — everything not yet triaged - [list-ingest-endpoints](https://flow.ttoss.dev/docs/reference/list-ingest-endpoints.md): The endpoints this account has published - [list-invitations](https://flow.ttoss.dev/docs/reference/list-invitations.md): List your open invitations - [list-projects](https://flow.ttoss.dev/docs/reference/list-projects.md): List the projects you belong to - [list-tasks](https://flow.ttoss.dev/docs/reference/list-tasks.md): List tasks - [reconcile-task](https://flow.ttoss.dev/docs/reference/reconcile-task.md): Clear a flag a write raised without being refused - [remove-project-member](https://flow.ttoss.dev/docs/reference/remove-project-member.md): Remove somebody from a project, or leave it - [render-graph](https://flow.ttoss.dev/docs/reference/render-graph.md): Render a neighbourhood as a diagram - [report-error](https://flow.ttoss.dev/docs/reference/report-error.md): Report a bug, an idea or a question about Flow itself - [retract-link](https://flow.ttoss.dev/docs/reference/retract-link.md): Withdraw an edge without erasing it - [retract-reference](https://flow.ttoss.dev/docs/reference/retract-reference.md): Withdraw a reference without erasing it - [revoke-ingest-endpoint](https://flow.ttoss.dev/docs/reference/revoke-ingest-endpoint.md): Close an endpoint for good - [rotate-ingest-endpoint-token](https://flow.ttoss.dev/docs/reference/rotate-ingest-endpoint-token.md): Mint a new token at the same URL - [triage-capture](https://flow.ttoss.dev/docs/reference/triage-capture.md): The one path out of the inbox - [update-ingest-endpoint](https://flow.ttoss.dev/docs/reference/update-ingest-endpoint.md): Change what an endpoint takes and stamps, keeping its URL - [update-project](https://flow.ttoss.dev/docs/reference/update-project.md): Rename a project, or change what it points at - [updateTask (REST only)](https://flow.ttoss.dev/docs/reference/update-task.md): Update a task in place - [update-tasks](https://flow.ttoss.dev/docs/reference/update-tasks.md): Update tasks in place — one, or several - [update-team](https://flow.ttoss.dev/docs/reference/update-team.md): Rename a team, or replace its members - [upsert-agent-run](https://flow.ttoss.dev/docs/reference/upsert-agent-run.md): Record an agent run, or update the one at this address - [upsert-tasks](https://flow.ttoss.dev/docs/reference/upsert-tasks.md): Create or resolve tasks — one, or several linked to each other - [validate-project](https://flow.ttoss.dev/docs/reference/validate-project.md): The validator — every inconsistency Flow's own arithmetic can find