orc-ai 0.1.36 → 0.1.40
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +141 -27
- package/dist/index.js +776 -640
- package/dist/skills/orc-platform/SKILL.md +51 -0
- package/dist/skills/orc-platform/references/execution.md +147 -0
- package/dist/skills/orc-platform/references/knowledge.md +186 -0
- package/dist/skills/orc-platform/references/memory.md +48 -0
- package/dist/skills/orc-platform/references/packages.md +86 -0
- package/dist/skills/orc-platform/references/rules.md +44 -0
- package/dist/skills/orc-platform/references/session-archive.md +199 -0
- package/dist/skills/orc-platform/references/setup.md +142 -0
- package/dist/skills/orc-platform/references/work.md +120 -0
- package/dist/skills/orc-platform/scripts/sync-sessions.py +297 -0
- package/dist/skills/orc-sdlc/SKILL.md +93 -0
- package/dist/skills/orc-sdlc/references/development.md +137 -0
- package/dist/skills/orc-sdlc/references/planning.md +103 -0
- package/dist/skills/orc-sdlc/references/review-and-delivery.md +95 -0
- package/dist/web/assets/{Agents-BCgZS9yM.js → Agents-KNRLNcpI.js} +1 -1
- package/dist/web/assets/Audit-ngeaHJiy.js +1 -0
- package/dist/web/assets/{Dashboard-Dt96DD5F.js → Dashboard-3F8aWN_d.js} +1 -1
- package/dist/web/assets/{DocumentWorkspace-BHbUy7ic.js → DocumentWorkspace-VHzjE2ih.js} +1 -1
- package/dist/web/assets/{FileEditor-DCslTjES.js → FileEditor-DijNrJWf.js} +1 -1
- package/dist/web/assets/JobWebhooks-BtzsOTHL.js +1 -0
- package/dist/web/assets/Jobs-DmkPxHxP.js +11 -0
- package/dist/web/assets/Knowledge-R_6uAqDE.js +28 -0
- package/dist/web/assets/{PackageCatalog-Dch8MV9_.js → PackageCatalog-CkZgscbx.js} +4 -4
- package/dist/web/assets/Pager-DjrHsuOJ.js +1 -0
- package/dist/web/assets/{Rules-CoMlVvUV.js → Rules-BEzXQ7L5.js} +2 -2
- package/dist/web/assets/Sessions-CCpWptIl.js +5 -0
- package/dist/web/assets/Settings-O3qQRgTI.js +20 -0
- package/dist/web/assets/Skills-B3R-l8Ou.js +1 -0
- package/dist/web/assets/{SourceEditor-DPHhZVrM.js → SourceEditor-CHubUpaP.js} +1 -1
- package/dist/web/assets/{Tasks-rgOphGCq.js → Tasks-DF9FqHDq.js} +8 -13
- package/dist/web/assets/Terminals-DODPh4gr.css +1 -0
- package/dist/web/assets/Terminals-wWVDPX68.js +115 -0
- package/dist/web/assets/Webhooks-DW7d9R_t.js +1 -0
- package/dist/web/assets/{abnfDiagram-VCTEODGH-Comk2Rw4.js → abnfDiagram-VCTEODGH-BVZ_t6ts.js} +1 -1
- package/dist/web/assets/{arc-Bvi_lKMF.js → arc-Bp1Q5GVT.js} +1 -1
- package/dist/web/assets/{architectureDiagram-5GKGNRK7-BTnv8TEv.js → architectureDiagram-5GKGNRK7-Cw_Fh8Fr.js} +1 -1
- package/dist/web/assets/{blockDiagram-I7D4REHJ-DeeC122Z.js → blockDiagram-I7D4REHJ-C9qLtS_w.js} +1 -1
- package/dist/web/assets/{c4Diagram-7LVT6UL2-BgW5C1aW.js → c4Diagram-7LVT6UL2-k3kt69iB.js} +1 -1
- package/dist/web/assets/channel-BSVHIa5R.js +1 -0
- package/dist/web/assets/{chunk-2Q5K7J3B-DNjz7yJz.js → chunk-2Q5K7J3B-DVLrwP2r.js} +1 -1
- package/dist/web/assets/{chunk-5VM5RSS4-JLiAXzlU.js → chunk-5VM5RSS4-D3tEfTaL.js} +1 -1
- package/dist/web/assets/{chunk-F27PBJKO-4rWBzZDo.js → chunk-F27PBJKO-DfkCzGL9.js} +1 -1
- package/dist/web/assets/{chunk-IMKFNOWR-D4mPRcFe.js → chunk-IMKFNOWR-yN65S3YD.js} +1 -1
- package/dist/web/assets/{chunk-JWPE2WC7-BgD0K5Ez.js → chunk-JWPE2WC7-ByQ6NS99.js} +1 -1
- package/dist/web/assets/{chunk-POPQ4Y6H-ClQOYSty.js → chunk-POPQ4Y6H-CHRLyTiT.js} +1 -1
- package/dist/web/assets/{chunk-SVP7TREG-D3Cn_lvd.js → chunk-SVP7TREG-DvLoUZ9h.js} +1 -1
- package/dist/web/assets/{chunk-TICWLB2K-DPn2znfA.js → chunk-TICWLB2K-BvzbxDY6.js} +1 -1
- package/dist/web/assets/{chunk-XXDRQBXY-2xXr8EXw.js → chunk-XXDRQBXY-DkfEU2XD.js} +1 -1
- package/dist/web/assets/classDiagram-ZZMXUADV-3BGzDrBP.js +1 -0
- package/dist/web/assets/classDiagram-v2-VYDZK3BY-3BGzDrBP.js +1 -0
- package/dist/web/assets/{cose-bilkent-JH36ORCC-CHqRRPA_.js → cose-bilkent-JH36ORCC-D2Hh7gs6.js} +1 -1
- package/dist/web/assets/{cynefin-OW5HDTMX-Bu5NPO95.js → cynefin-OW5HDTMX-DwbOregT.js} +1 -1
- package/dist/web/assets/{cynefinDiagram-5FMLGOSQ-BI3nxgnD.js → cynefinDiagram-5FMLGOSQ-vE21HTel.js} +1 -1
- package/dist/web/assets/{dagre-GXQ25YYZ-B7lINgif.js → dagre-GXQ25YYZ-Dtj5PNkl.js} +1 -1
- package/dist/web/assets/{diagram-S7CK7UJ4-C-D6efep.js → diagram-S7CK7UJ4-CE958Up8.js} +1 -1
- package/dist/web/assets/{diagram-UQ7AKVKN-BLuEz09b.js → diagram-UQ7AKVKN-eKQdP4HV.js} +1 -1
- package/dist/web/assets/{diagram-VSXAHHWV-CUPoEtgr.js → diagram-VSXAHHWV-CYvYJQrA.js} +1 -1
- package/dist/web/assets/{diagram-VX7I27RA-CSSKOhYt.js → diagram-VX7I27RA-BbKYzLMW.js} +1 -1
- package/dist/web/assets/{diagram-Z3DM3KII-DPn5bqOq.js → diagram-Z3DM3KII-DV77g65D.js} +1 -1
- package/dist/web/assets/{download-CM6xWttS.js → download-36kk3IeP.js} +1 -1
- package/dist/web/assets/{ebnfDiagram-PWID7BFC-MFXoS-Jz.js → ebnfDiagram-PWID7BFC-D0sEmHPl.js} +1 -1
- package/dist/web/assets/{erDiagram-RLTQ6QDP-4HM-oT_n.js → erDiagram-RLTQ6QDP-DK-Z6i0m.js} +1 -1
- package/dist/web/assets/{flowDiagram-HODETNUW-C4Fh3QeO.js → flowDiagram-HODETNUW-Dp0aJQEZ.js} +1 -1
- package/dist/web/assets/folder-open-D1-I40k-.js +16 -0
- package/dist/web/assets/{ganttDiagram-EL5Y4UJY-BB0_ZKN6.js → ganttDiagram-EL5Y4UJY-BoG15yoq.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-WWUBYQGX-BmQ3vg7J.js → gitGraphDiagram-WWUBYQGX-K4reAMXM.js} +1 -1
- package/dist/web/assets/{highlighted-body-KPVGNVTW-oCX1KOoZ.js → highlighted-body-KPVGNVTW-5ZVqRrCq.js} +1 -1
- package/dist/web/assets/index-CB3c1nr-.css +1 -0
- package/dist/web/assets/index-SOCnaNS0.js +453 -0
- package/dist/web/assets/{infoDiagram-27XIBGKW-BTPkoR3C.js → infoDiagram-27XIBGKW-67wFgmJP.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-5VMMS53U-CiHd2ebW.js → ishikawaDiagram-5VMMS53U-B9jfOEH9.js} +1 -1
- package/dist/web/assets/{journeyDiagram-3NMN7TZE-CxaySxDn.js → journeyDiagram-3NMN7TZE-CuSLYkR9.js} +1 -1
- package/dist/web/assets/{kanban-definition-UXKFOSKX-BOX0YIRw.js → kanban-definition-UXKFOSKX-Cw5N-uDl.js} +1 -1
- package/dist/web/assets/{layout-BhNFpPPe.js → layout-CWCq0m-I.js} +1 -1
- package/dist/web/assets/{linear-DHq-y1s_.js → linear-DKAXfoGA.js} +1 -1
- package/dist/web/assets/list-CaqywJgg.js +6 -0
- package/dist/web/assets/mermaid-HWGCJPDP-CMQlzgg9.js +609 -0
- package/dist/web/assets/{mindmap-definition-YA3MSWOX-DZGpGSz5.js → mindmap-definition-YA3MSWOX-CA6cGhJr.js} +1 -1
- package/dist/web/assets/{pegDiagram-XKGWAZYB-BxMh-_51.js → pegDiagram-XKGWAZYB-CX-B1UCC.js} +1 -1
- package/dist/web/assets/{pencil-B6dqJ9w4.js → pencil-C-6rguDb.js} +1 -1
- package/dist/web/assets/{pieDiagram-E7YTZNPT-CS3y4-9p.js → pieDiagram-E7YTZNPT-ZxtffUUp.js} +1 -1
- package/dist/web/assets/{quadrantDiagram-AXDQQJYC-CpI43lZu.js → quadrantDiagram-AXDQQJYC-hp3sjfpX.js} +1 -1
- package/dist/web/assets/{railroadDiagram-O6MQD6OU-DjJq4i95.js → railroadDiagram-O6MQD6OU-DA06SOlR.js} +1 -1
- package/dist/web/assets/{refresh-cw-DlrGbI-a.js → refresh-cw-BQyph7xD.js} +1 -1
- package/dist/web/assets/{requirementDiagram-BXWQKSXE-s2eQx2yN.js → requirementDiagram-BXWQKSXE-B6uWt2Rc.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-P5KCCOFB-D_Vdp4pK.js → sankeyDiagram-P5KCCOFB-C5_tPpb5.js} +1 -1
- package/dist/web/assets/{save-C9B3YcwG.js → save-qGawhRKH.js} +1 -1
- package/dist/web/assets/{scroll-area-BlQvOdJP.js → scroll-area-C-MTuK1y.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-WJ2MYXX4-CQHywZuE.js → sequenceDiagram-WJ2MYXX4-CP1FmNA0.js} +1 -1
- package/dist/web/assets/{sizeCapture-INFHLROL-BInl5f7-.js → sizeCapture-INFHLROL-BnZ0rzQe.js} +1 -1
- package/dist/web/assets/{stateDiagram-D77RDMKH-DzvPlBSY.js → stateDiagram-D77RDMKH-B--86L9i.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-MP3YSRHH-CXtInY-i.js +1 -0
- package/dist/web/assets/{swimlanes-42K2YHIH-Dg2ec7U4.js → swimlanes-42K2YHIH-BV8_rH1v.js} +1 -1
- package/dist/web/assets/swimlanesDiagram-VR7AAH4N-DyVW1GT5.js +8 -0
- package/dist/web/assets/{timeline-definition-24CTP7MA-CIv5WXwQ.js → timeline-definition-24CTP7MA-Cm1hEfH0.js} +1 -1
- package/dist/web/assets/{upload-Bj7E30a8.js → upload-CCnbjfQN.js} +1 -1
- package/dist/web/assets/useJobs-DDRY0jra.js +1 -0
- package/dist/web/assets/{useKnowledge-D0_usn9_.js → useKnowledge-CHZ4AwZh.js} +1 -1
- package/dist/web/assets/{useMemories-8BpYi3YI.js → useMemories-BGxDOJge.js} +1 -1
- package/dist/web/assets/useProjectScope-B28fk5NO.js +1 -0
- package/dist/web/assets/{vennDiagram-4TSXK5OY-XAHw4n3M.js → vennDiagram-4TSXK5OY-vVCoILPC.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-VM6X3IG4-BIEdfrsN.js → wardleyDiagram-VM6X3IG4-CnkLT61Q.js} +1 -1
- package/dist/web/assets/{xychartDiagram-S5SC5T6Z-BaNxlHBC.js → xychartDiagram-S5SC5T6Z-Bvv63kic.js} +1 -1
- package/dist/web/index.html +3 -3
- package/package.json +1 -1
- package/dist/skills/orc-bugfix/SKILL.md +0 -26
- package/dist/skills/orc-coder/SKILL.md +0 -38
- package/dist/skills/orc-gateway/SKILL.md +0 -103
- package/dist/skills/orc-git-flow/SKILL.md +0 -26
- package/dist/skills/orc-handoff/SKILL.md +0 -86
- package/dist/skills/orc-knowledge/SKILL.md +0 -106
- package/dist/skills/orc-main-base/SKILL.md +0 -32
- package/dist/skills/orc-memory/SKILL.md +0 -91
- package/dist/skills/orc-memory-review/SKILL.md +0 -26
- package/dist/skills/orc-planner/SKILL.md +0 -24
- package/dist/skills/orc-report/SKILL.md +0 -90
- package/dist/skills/orc-requirements/SKILL.md +0 -111
- package/dist/skills/orc-reviewer/SKILL.md +0 -47
- package/dist/skills/orc-session/SKILL.md +0 -117
- package/dist/skills/orc-tasks/SKILL.md +0 -39
- package/dist/skills/orc-wiki/SKILL.md +0 -15
- package/dist/skills/orc-worker-base/SKILL.md +0 -59
- package/dist/web/assets/Audit-PGckH0vM.js +0 -1
- package/dist/web/assets/Jobs-CXU4KM7g.js +0 -11
- package/dist/web/assets/Knowledge-Dl4SueEz.js +0 -38
- package/dist/web/assets/Pager-DP4jbc0w.js +0 -1
- package/dist/web/assets/Sessions-B5wUetrc.js +0 -1
- package/dist/web/assets/Settings-CrMlCCF0.js +0 -12
- package/dist/web/assets/Skills-p8PK9QQh.js +0 -1
- package/dist/web/assets/Terminals-BbWYyHA3.css +0 -1
- package/dist/web/assets/Terminals-krsRcQI9.js +0 -43
- package/dist/web/assets/channel-DEfxPxY-.js +0 -1
- package/dist/web/assets/classDiagram-ZZMXUADV-AHd3Z06u.js +0 -1
- package/dist/web/assets/classDiagram-v2-VYDZK3BY-AHd3Z06u.js +0 -1
- package/dist/web/assets/folder-open-B4mla76J.js +0 -6
- package/dist/web/assets/index-1DuOwIVM.css +0 -1
- package/dist/web/assets/index-C8LK_ZGr.js +0 -379
- package/dist/web/assets/mermaid-HWGCJPDP-DJNeD_0S.js +0 -609
- package/dist/web/assets/schemas-Cwl03S4d.js +0 -57
- package/dist/web/assets/stateDiagram-v2-MP3YSRHH-BiG6-goP.js +0 -1
- package/dist/web/assets/swimlanesDiagram-VR7AAH4N-CGOOp6ap.js +0 -8
- package/dist/web/assets/useJobs-5iAiSyqW.js +0 -1
- package/dist/web/assets/useProjectScope-CRW39JH-.js +0 -1
- /package/dist/skills/{orc-handoff → orc-platform}/scripts/upload-session.py +0 -0
package/README.md
CHANGED
|
@@ -61,6 +61,8 @@ On first launch the app sets everything up:
|
|
|
61
61
|
|
|
62
62
|
The builds are unsigned: on macOS right-click the app and choose Open the first time, on Windows choose "More info" then "Run anyway".
|
|
63
63
|
|
|
64
|
+
The sidebar shows the saved execution host, for example `Connected (lab)` or `Connected (local)`. Switching hosts applies to new actions immediately. For a full restart, use **Settings → ORC server → Restart ORC server**; it keeps settings and reconnects the dashboard automatically. Restart closes active terminals and may interrupt running work. Host changes never trigger a restart automatically.
|
|
65
|
+
|
|
64
66
|
<details>
|
|
65
67
|
<summary>Headless / CLI-only install (servers, Docker, CI)</summary>
|
|
66
68
|
|
|
@@ -122,6 +124,38 @@ orc task list
|
|
|
122
124
|
|
|
123
125
|
Open `http://localhost:7700` to use the web dashboard - task board, kanban, flow runs, jobs, memories, sessions, knowledge, and a live chat panel. The same server hosts both the REST API and the prebuilt React SPA, so there is no separate command to run for the UI.
|
|
124
126
|
|
|
127
|
+
Chat uses the shared agent runtime: Claude through its SDK, Codex through its native
|
|
128
|
+
CLI, and other agents through ACPX. Choose a model from the composer; configure
|
|
129
|
+
model choices, conversation instructions, the ORC MCP connection and automatic
|
|
130
|
+
actions in **Settings → Chat**. Defaults are stored in `preferences.chat` in ORC's
|
|
131
|
+
JSON configuration and apply to new conversations on every device. The model
|
|
132
|
+
dialog shows the current conversation's setup. Claude appends the instructions
|
|
133
|
+
to its coding system prompt; Codex and ACPX receive them as turn instructions.
|
|
134
|
+
Agent and workspace instructions may also apply.
|
|
135
|
+
|
|
136
|
+
Automatic actions default off: Claude can request approval in chat, Codex uses a
|
|
137
|
+
read-only sandbox, and ACPX follows its agent's native permission policy. Enabling
|
|
138
|
+
automatic actions lets Claude bypass permission prompts and Codex write inside
|
|
139
|
+
its workspace; ORC rules remain enforced. The ORC MCP option adds an authenticated
|
|
140
|
+
connection for Claude and Codex without exposing credentials to the browser.
|
|
141
|
+
Host configuration can include additional MCP servers; choosing host configuration
|
|
142
|
+
does not disable those servers. Other ACPX agents require host configuration.
|
|
143
|
+
|
|
144
|
+
Use the history icon to continue a saved chat or an ended Claude/Codex coding
|
|
145
|
+
session. Synced sessions use the existing verified repository/commit handoff;
|
|
146
|
+
provide missing checkout details before importing. Native history stays with the
|
|
147
|
+
agent, while chat displays up to 100 recent imported turns. An active source session
|
|
148
|
+
must end before chat resumes it. Resume failures never trigger a fresh session.
|
|
149
|
+
New chats use the API working directory locally or the selected SSH host's home;
|
|
150
|
+
resumed chats retain their execution host and folder. New conversation keeps the
|
|
151
|
+
previous chat in history.
|
|
152
|
+
|
|
153
|
+
Responses show provider-supplied text, collapsible thinking summaries and tool
|
|
154
|
+
input/results as they arrive, with a responding indicator during quiet periods.
|
|
155
|
+
Some providers emit complete blocks rather than individual tokens. Conversation
|
|
156
|
+
messages and activity are saved in the ORC database. Full-screen mode preserves
|
|
157
|
+
the conversation; phones and tablets use a full-screen chat sheet automatically.
|
|
158
|
+
|
|
125
159
|
> [!TIP]
|
|
126
160
|
> The database is created automatically at `~/.orc/orc.db` on first run. No setup needed.
|
|
127
161
|
|
|
@@ -197,6 +231,27 @@ The `--mcp-config` flag wires the host agent back to ORC's [HTTP MCP endpoint](#
|
|
|
197
231
|
|
|
198
232
|
## Connect your agent
|
|
199
233
|
|
|
234
|
+
For coding-agent access, check the installed `spec` CLI bridge first (`spec --help`,
|
|
235
|
+
`spec specs`). It can call ORC's MCP server without configuring MCP separately in
|
|
236
|
+
each agent. Use an existing ORC registration or an inline endpoint for your selected
|
|
237
|
+
installation:
|
|
238
|
+
|
|
239
|
+
```sh
|
|
240
|
+
spec call --mcp-http http://127.0.0.1:7700/mcp context --data '{"project":"my-app"}'
|
|
241
|
+
spec call --mcp-http http://127.0.0.1:7700/mcp skill_read --data '{"name":"orc-sdlc","project":"my-app"}'
|
|
242
|
+
```
|
|
243
|
+
|
|
244
|
+
For authenticated servers, use existing secure secret references in spec configuration;
|
|
245
|
+
do not put secrets in command arguments. Use `SPEC_NO_CACHE=1` when refreshing live
|
|
246
|
+
context and effective skills. Direct MCP connections below remain supported when
|
|
247
|
+
already configured. Check the CLI bridge before reporting ORC unavailable.
|
|
248
|
+
|
|
249
|
+
Lifecycle hooks and MCP registration are separate. The hook examples below record
|
|
250
|
+
session activity; also register ORC in the client's supported MCP configuration
|
|
251
|
+
using `orc mcp` (stdio) or `<origin>/mcp` (HTTP). Preserve existing servers and
|
|
252
|
+
configure authentication privately. Verify tool discovery and a project-scoped
|
|
253
|
+
`context` call in each client; installed hooks alone do not establish MCP access.
|
|
254
|
+
|
|
200
255
|
### Claude Code
|
|
201
256
|
|
|
202
257
|
Add to `~/.claude/settings.json`:
|
|
@@ -309,17 +364,18 @@ The task loop automatically picks up queued tasks and spawns worker agents:
|
|
|
309
364
|
|
|
310
365
|
```bash
|
|
311
366
|
# Create a task with a workflow and backend
|
|
312
|
-
orc task add "Implement user auth" --skill orc-
|
|
367
|
+
orc task add "Implement user auth" --skill orc-sdlc --backend claude --priority high
|
|
313
368
|
|
|
314
369
|
# Or batch-create with dependencies via MCP
|
|
315
370
|
task_batch_create({ tasks: [
|
|
316
|
-
{ title: "Design schema", skill_name: "orc-
|
|
317
|
-
{ title: "Implement API",
|
|
318
|
-
{ title: "
|
|
371
|
+
{ ref: "design", title: "Design schema", skill_name: "orc-sdlc" },
|
|
372
|
+
{ ref: "api", title: "Implement API", skill_name: "orc-sdlc", depends_on: ["design"] },
|
|
373
|
+
{ ref: "tests", title: "Verify API integration", skill_name: "orc-sdlc", depends_on: ["api"] }
|
|
319
374
|
]})
|
|
320
375
|
```
|
|
321
376
|
|
|
322
377
|
The loop handles concurrency, session resume on feedback, review round limits, stale claim cleanup, and backend routing.
|
|
378
|
+
Each task's configured flow handles its review; a separate review task is unnecessary.
|
|
323
379
|
|
|
324
380
|
Every task runs a **flow graph** (see [Task flows](#task-flows)); `orc-default` is the build → review → done pipeline described above.
|
|
325
381
|
|
|
@@ -371,6 +427,8 @@ Enable the task loop in `~/.orc/config.json`:
|
|
|
371
427
|
|
|
372
428
|
Projects group tasks, memories, and jobs. Set an active project and all commands auto-scope:
|
|
373
429
|
|
|
430
|
+
Projects can also store an optional Git remote URL in the create/edit dialog or through `--git-remote-url`. HTTPS and SSH addresses are supported without embedded credentials. The address is project metadata; setting it does not clone a repository or change a checkout's remote. Clear it in the editor, send `git_remote_url: null` through the API, or use `orc project update my-app --clear-git-remote-url`.
|
|
431
|
+
|
|
374
432
|
```bash
|
|
375
433
|
orc project add my-app -d "Main application"
|
|
376
434
|
orc project use my-app # set active
|
|
@@ -464,7 +522,7 @@ The graph itself is deterministic; only the nodes are agents. That means loops,
|
|
|
464
522
|
```bash
|
|
465
523
|
orc flow list # what graphs are available
|
|
466
524
|
orc flow show orc-default # nodes, edges, limits
|
|
467
|
-
orc task add "Fix the flaky test" --flow orc-default --skill orc-
|
|
525
|
+
orc task add "Fix the flaky test" --flow orc-default --skill orc-sdlc
|
|
468
526
|
orc flow status <taskId> # active nodes + the ledger of outcomes
|
|
469
527
|
orc flow resume <taskId> --outcome approved # resolve a human gate
|
|
470
528
|
orc flow halt <taskId> # stop it and kill live nodes
|
|
@@ -508,6 +566,53 @@ orc job add on-change --command "bun run lint" --trigger watch --watch "./s
|
|
|
508
566
|
orc job add on-push --command "bun run ci" --trigger webhook
|
|
509
567
|
```
|
|
510
568
|
|
|
569
|
+
Jobs separate **what runs** from **when it runs**. Choose **Run command**,
|
|
570
|
+
**Run agent**, or **Create task** in the dashboard. Command is required only for
|
|
571
|
+
Run command. Agent jobs save instructions, backend, optional model and explicit
|
|
572
|
+
tool approval; each run links to its tracked session. Task jobs save a task title
|
|
573
|
+
and instructions and link to the created task. **Start the task flow automatically**
|
|
574
|
+
is off by default, so generated tasks wait for a manual flow start.
|
|
575
|
+
The CLI accepts typed actions through `--action-config <json>`.
|
|
576
|
+
|
|
577
|
+
New jobs are disabled by default. Select **Enable this job immediately** during
|
|
578
|
+
creation or pass `orc job add ... --enable` to opt in. Jobs supports enable/disable
|
|
579
|
+
directly in the list and for selected rows. Projects shares the selection toolbar
|
|
580
|
+
for activate, pause and archive actions; select-all applies only to displayed rows.
|
|
581
|
+
Failed bulk updates remain selected so you can retry them.
|
|
582
|
+
|
|
583
|
+
### Webhooks
|
|
584
|
+
|
|
585
|
+
Open **Activity → Webhooks** to see all configured event sources and their connected
|
|
586
|
+
jobs. Create a source without a job, copy its URL and one-time signing secret, then
|
|
587
|
+
register them with the provider. Sources belong to the selected project, or are
|
|
588
|
+
shared across projects when created in All projects.
|
|
589
|
+
|
|
590
|
+
In **Jobs → New job** (or Edit), choose **Webhook** as the trigger, select an
|
|
591
|
+
existing source or create one inline, and set this job's event/action filters.
|
|
592
|
+
One source can trigger multiple enabled jobs, each with its own filters and action.
|
|
593
|
+
The Webhooks page shows source enablement, connected jobs and recent deliveries,
|
|
594
|
+
including individual run results and links to generated tasks or agent sessions.
|
|
595
|
+
Deleting a job disconnects it while preserving the reusable source.
|
|
596
|
+
|
|
597
|
+
For command jobs, accepted JSON is passed unchanged on stdin; bounded metadata is
|
|
598
|
+
also available as `ORC_WEBHOOK_*` environment variables. Agent and task jobs receive
|
|
599
|
+
up to 50,000 characters of event data, explicitly marked as untrusted input, alongside
|
|
600
|
+
the configured instructions. Delivery history stores event metadata and a payload
|
|
601
|
+
hash, not the payload body or signing secret; generated tasks and agent prompts can
|
|
602
|
+
contain the supplied event data.
|
|
603
|
+
|
|
604
|
+
Generic endpoints verify `X-Orc-Signature-256: sha256=<HMAC-SHA256 of the raw body>`.
|
|
605
|
+
Use `X-Orc-Event` for event filtering and `X-Orc-Delivery` (or
|
|
606
|
+
`Idempotency-Key`) for deduplication. GitHub endpoints use
|
|
607
|
+
`X-Hub-Signature-256`, `X-GitHub-Event` and `X-GitHub-Delivery` directly.
|
|
608
|
+
Event names and payload `action` values are configurable, so PR lifecycle,
|
|
609
|
+
reviews, workflow runs, releases, or later providers use the same job trigger.
|
|
610
|
+
|
|
611
|
+
Signing secrets are encrypted at rest and shown only when an endpoint is created or
|
|
612
|
+
rotated. The receiver is intentionally outside normal ORC bearer authentication;
|
|
613
|
+
the per-endpoint HMAC is its authentication boundary. Management remains under the
|
|
614
|
+
authenticated API.
|
|
615
|
+
|
|
511
616
|
### Gateway (Telegram / Slack)
|
|
512
617
|
|
|
513
618
|
Approve agent work from your phone, search memory, or start a live AI session.
|
|
@@ -551,7 +656,7 @@ Same commands as Telegram. Create a Slack app at [api.slack.com/apps](https://ap
|
|
|
551
656
|
|
|
552
657
|
## Skills
|
|
553
658
|
|
|
554
|
-
ORC ships
|
|
659
|
+
ORC ships two entry-point skills. Their supporting references load only when needed; custom skills and packages remain supported.
|
|
555
660
|
|
|
556
661
|
### Install skills
|
|
557
662
|
|
|
@@ -560,21 +665,23 @@ ORC ships with agent workflow skills and built-in skill templates for the task l
|
|
|
560
665
|
npx skills add niradler/orc --all
|
|
561
666
|
|
|
562
667
|
# Or pick specific ones
|
|
563
|
-
npx skills add niradler/orc --skill orc-
|
|
668
|
+
npx skills add niradler/orc --skill orc-platform orc-sdlc
|
|
564
669
|
|
|
565
670
|
# Global install
|
|
566
671
|
npx skills add niradler/orc --all -g
|
|
567
672
|
```
|
|
568
673
|
|
|
569
|
-
###
|
|
674
|
+
### Entry-point skills
|
|
570
675
|
|
|
571
|
-
| Skill
|
|
572
|
-
|
|
|
573
|
-
| `orc-
|
|
574
|
-
| `orc-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
676
|
+
| Skill | Purpose |
|
|
677
|
+
| --- | --- |
|
|
678
|
+
| `orc-platform` | Operate ORC domains: setup/interfaces/auth, memory and maintained KBs/digests/embeddings, work/operations, sessions/SSH/Git/chat, rules and agent packages |
|
|
679
|
+
| `orc-sdlc` | Requirements → risk/complexity classification → direct work or plan → implementation → tests/completeness → review/rework → authorized Git delivery, with shared learning throughout |
|
|
680
|
+
|
|
681
|
+
Start with the relevant entry point and read only its selected reference. Platform
|
|
682
|
+
guidance groups related domains while keeping memory, execution and rules independently
|
|
683
|
+
loadable; SDLC has planning, development and review/delivery references. Clear low-risk
|
|
684
|
+
work can execute directly; assigned managed nodes preserve roles and flow contracts.
|
|
578
685
|
|
|
579
686
|
### Built-in skill templates
|
|
580
687
|
|
|
@@ -585,7 +692,7 @@ On the **Skills** page, each built-in has an **Agent discovery** toggle, plus
|
|
|
585
692
|
across the installation and defaults to visible. Hidden built-ins stay on the
|
|
586
693
|
Skills page for management and remain readable by name, including supporting
|
|
587
694
|
files; existing task flows continue to use them. User/imported skills and authored
|
|
588
|
-
global/project instruction overrides remain discoverable.
|
|
695
|
+
global/project instruction overrides of current skills remain discoverable.
|
|
589
696
|
|
|
590
697
|
The policy is saved under `skills.hidden_builtins` in `~/.orc/config.json` and
|
|
591
698
|
read afresh for discovery, including by existing MCP processes. `GET /api/skills`
|
|
@@ -595,16 +702,14 @@ omits hidden built-ins; `include_hidden=true` returns the management catalog wit
|
|
|
595
702
|
API authentication. This installation-wide preference ignores project config.
|
|
596
703
|
New built-ins default to visible until hidden explicitly.
|
|
597
704
|
|
|
598
|
-
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
604
|
-
|
|
605
|
-
|
|
606
|
-
| `orc-requirements` | Skill | Requirements interview - outcome, criteria, constraints, scope |
|
|
607
|
-
| `orc-report` | Skill | Project status report - health summary, blockers, active work |
|
|
705
|
+
Retired built-in names (such as `orc-coder` and `orc-reviewer`) remain readable
|
|
706
|
+
as compatibility routes for saved tasks, authored overrides and frozen flows, but
|
|
707
|
+
are not additional discovery entries. New tasks and built-in flows use
|
|
708
|
+
`orc-sdlc`; the node role selects implementation versus independent review.
|
|
709
|
+
Applicable authored legacy worker/coder/reviewer/knowledge instructions remain
|
|
710
|
+
role-scoped supplements with revision provenance, including on resume. Other authored
|
|
711
|
+
legacy domain guidance is indexed from the canonical effective read and loads by name
|
|
712
|
+
when relevant. Conflicts are surfaced rather than silently rewriting stored overlays.
|
|
608
713
|
|
|
609
714
|
Add custom skills by creating a `SKILL.md` in `~/.orc/skills/my-workflow/SKILL.md`.
|
|
610
715
|
|
|
@@ -629,7 +734,7 @@ orc skill validate ./my-workflow
|
|
|
629
734
|
orc skill export my-workflow ./exported/my-workflow
|
|
630
735
|
```
|
|
631
736
|
|
|
632
|
-
Import
|
|
737
|
+
Import GitHub skills from **Skills → Import from GitHub**. Paste a repository URL, `owner/repo`, a GitHub skill-folder URL, or a `https://skills.sh/owner/repo/skill` link, discover the skills, then select which to import. Private repositories use `gh` credentials on the configured execution host (local by default, remote when `ssh.host` is set), falling back to `ORC_GITHUB_TOKEN` / `github.token` on the ORC server; credentials need access to the repository. Without credentials, public repositories still work. ORC copies each complete folder at the displayed commit, including nested documentation, scripts and binary assets. Existing names are never overwritten by an import. Select up to 16 skills per import (64 MiB total).
|
|
633
738
|
|
|
634
739
|
```bash
|
|
635
740
|
orc skill import vercel-labs/agent-skills --list
|
|
@@ -670,6 +775,15 @@ The **Agents** page creates/reads specialist profiles. API `/api/agents` and `/a
|
|
|
670
775
|
|
|
671
776
|
## MCP tools
|
|
672
777
|
|
|
778
|
+
Agents can fetch original skill scripts/assets with
|
|
779
|
+
`skill_read({name: "orc-platform", ref: "scripts/upload-session.py", download: true, project: "my-app"})`.
|
|
780
|
+
It returns a signed ten-minute `download_url`, `sha256`, `size_bytes` and expiry
|
|
781
|
+
instead of the file body. Download to a local file and verify the hash; do not
|
|
782
|
+
reconstruct scripts from tool text. The URL authorizes only that file version and
|
|
783
|
+
does not contain the API secret. Keep it private. Expiry, API restart or file changes
|
|
784
|
+
require a new URL. Downloading never executes scripts. The authenticated REST mint
|
|
785
|
+
endpoint is `POST /api/skills/<name>/download` with `ref` and optional scope.
|
|
786
|
+
|
|
673
787
|
Tools are available to any connected agent. Start every session with `context`.
|
|
674
788
|
|
|
675
789
|
| Category | Tools |
|