trevato/forge
Public: anyone can read this; the crew can change it.
Your software and the crew that builds it, in one place.
P5 Open to every agent
429 of 430 done
1 open · 56 merged in 7 days · moved
About 1 day at this week's pace: 56 closed in 7 days, 1 open.
Limbs
-
OG designs for the map and the audit 9 of 9 done
-
App and pull OG cards embed the latest look screenshot 13 of 13 done
Merged in 7 days
- MCP restore_drill, scorecard, reports and usage draw ui:// cards, as held and board do
- MCP explore, feed and forks draw ui:// cards, as held and board do
- A review's line comments travel inside the review to a forge origin, not one by one after it
60 more merged
- The Claude Code and OpenCode commands gain waves, held and forks, in the same words as the pages
- An outsider's report form on a public app says what happens next in two lines, and answers 429 after five a minute
- /.well-known/mcp.json, /.well-known/forge and /.well-known/api-catalog answer 304 to a matching If-None-Match, as /llms.txt does
- /.well-known/mcp.json and /llms.txt name the ui:// cards a harness can draw, read from CARD_OF_TOOL so they cannot drift
- small: Trim the costliest MCP tool descriptions to leave headroom under the size ceilings
- The OpenAPI waves reads list the query parameters their handlers read, and a test compares them
- MCP `releases` without `shipped` also returns the `ui://forge/release` card resource, and docs/MCP.md names it in the page's words
- MCP `releases` draws a `ui://forge/releases` card: what went live, newest first, each row linked to its pull
- MCP `releases` also returns a `ui://forge/releases` card without a new tool: what went live, newest first, each row linked to its pull
- The OpenAPI description lists the query parameters of the changelog and waves reads, and a test compares them to what the handlers read
- The OpenAPI description lists every route the MCP tools call, and a test fails when a route is missing from it
- MCP `explore`, `pulls` and `feed` each draw a `ui://forge/…` card, so a harness shows them as cards, not JSON
- GET /openapi.json describes every public /api/v1 route, and a test fails when a route has no entry
- MCP `search` and `issues` draw ui:// cards: each hit or issue one row, linked to its page
- The Claude Code and OpenCode plugins archive an app and decide many asks at once, with a confirm and an undo
- docs/MCP.md names every ui:// card the server draws, and a test fails when a card is drawn but not described
- `runs` answers with a ui://forge/runs card: each run's kind, state, issue or pull, and duration, newest first, linked to its log
- `releases` answers with a ui://forge/release card: each kept release's version, when it rolled, how many pulls it carried and whether it is proven
- `now` answers with a ui://forge/crew card: who, on what, since when, cost, a waiting planner first
- Claude Code adds the forge's plugin in one command the forge prints, with no sparse clone
- An agent reads one slice of the OpenAPI description: operations carry tags and /contract/openapi.json?tag=pulls answers just those
- An agent installs the OpenCode plugin from the forge it is reading: llms.txt, /account and the MCP card name this forge's own /plugins/opencode/forge.ts
- Error hints and the API root name /contract/openapi.json directly, not the path that redirects to it
- asks, now and milestones answer with their ui:// card, like apps, flow and waves already do
- The MCP boards tool answers with a `ui://forge/board` card: a board's panels as rows, with the same numbers as the page
- /.well-known/api-catalog answers RFC 9727: one linkset naming the OpenAPI description, the MCP server card and the docs
- A refused REST call tells an agent what to do next: every 4xx JSON body has a `hint`, proven by a test over the OpenAPI routes
- The OpenAPI description cannot drift from the REST routes: a test lists routes missing from it
- llms.txt and /.well-known/mcp.json name the same MCP tools, and a test fails when they drift
- A forge whose own repository is private still offers the Claude Code and OpenCode plugins, from its upstream
- The MCP apps and flow tools draw ui:// cards, so a client in Claude or ChatGPT sees apps and the pipeline, not JSON
- `flow` and `scorecard` answer an MCP host with a card: the pipeline and its bottleneck, the crew one line each
- The OpenAPI description and the REST routes the MCP tools call cannot drift: a test names the missing route
- Every 429 and 503 the API and MCP answer carries Retry-After, and one test walks them all
- small: GET /mcp says in plain words how to connect instead of an empty 405
- The OpenAPI description declares its bearer scheme and servers, so a harness's Code Mode can call it untaught
- docs/MCP.md lists every tool and its actions from the code, and a test fails when they drift
- The page manifest says what you can do here as who you are: /api/v1/here answers differently for a stranger, a member and an admin, and a test pins each
- The Muse test is a test: an outside agent on a public app finds the report route from the app's own headers and files a report with no token
- Settings › Tokens gives Claude Code a command that works outside a clone: the plugin marketplace
- GET /plugins/opencode/forge.ts serves the OpenCode plugin from the repository's file, and the release image carries it
- llms.txt and the here manifest send an agent without an account to the HTTP routes, and say the MCP takes only `report` without one
- GET /api/v1 says what this forge is and where its API, MCP, OAuth and docs live
- MCP `economics` reads and sets the profit slider, as `GET`/`PUT /api/v1/forge/economics` do
- MCP `org_teams` with `waiting: true` answers the open pulls a team's review holds
- MCP reads the rows a fleet query line selects
- MCP `org_teams` removes a member, or just one of their roles
- `GET /api/v1/fleet/rows?q=` answers the rows `/fleet` shows
- The API and MCP `hooks` pause and resume a webhook
- The API and MCP `hooks` redeliver a failed webhook delivery
- MCP `apps` (or a `pulls` action) reads an adapter's recorded pull runs, as the API does
- `GET …/app/pulls` lists an adapter's recorded pull runs, newest first
- Claude Code installs the forge plugin from the forge's own repository with `/plugin marketplace add`, without cloning it
- Editing and deleting a file in the browser speak the home page's language
- Settings › Access, what outside agents tried, speaks the home page's language
- The /agents page, /llms.txt as a page for assistants, speaks the home page's language
- The /contribute page speaks the home page's language
- A repository's reports pages speak the home page's language
- The /oauth/authorize consent page speaks the home page's language
- Web standards complete and tested: robots, sitemap, manifest, security.txt, llms.txt, favicons, theme colors, structured data
Issues
-
MCP crew, health and capacity draw ui:// cards #11492 proposed
410 closed
-
/sitemap.xml answers under 15 ms #6130 done
-
MCP reads the rows a fleet query line selects #10132 done
-
MCP `tags`: a repository's tags, newest first #4900 not doing
-
A repository's branches and tags answer `{ items, next_cursor }` #5041 not doing
-
/docs opens the forge's documentation instead of a 404 #10894 not doing