@nocobase/app-plugin-agents 0.1.0-beta.5 → 0.1.0-beta.6

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.
Files changed (133) hide show
  1. package/CHANGELOG.md +45 -0
  2. package/README.md +36 -21
  3. package/dist/client/chat.d.ts +2 -0
  4. package/dist/client/chat.d.ts.map +1 -1
  5. package/dist/client/chat.js +2 -0
  6. package/dist/client/chat.js.map +1 -1
  7. package/dist/client/locales/en-US.d.ts +3 -0
  8. package/dist/client/locales/en-US.d.ts.map +1 -1
  9. package/dist/client/locales/en-US.js +3 -0
  10. package/dist/client/locales/en-US.js.map +1 -1
  11. package/dist/client/locales/runtimes.en-US.d.ts +37 -0
  12. package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
  13. package/dist/client/locales/runtimes.en-US.js +37 -0
  14. package/dist/client/locales/runtimes.en-US.js.map +1 -1
  15. package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
  16. package/dist/client/locales/runtimes.zh-CN.js +37 -0
  17. package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
  18. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  19. package/dist/client/locales/zh-CN.js +3 -0
  20. package/dist/client/locales/zh-CN.js.map +1 -1
  21. package/dist/client/pages/runtimes/index.d.ts.map +1 -1
  22. package/dist/client/pages/runtimes/index.js +2 -1
  23. package/dist/client/pages/runtimes/index.js.map +1 -1
  24. package/dist/client/pages/runtimes/runner-sheet.d.ts.map +1 -1
  25. package/dist/client/pages/runtimes/runner-sheet.js +2 -1
  26. package/dist/client/pages/runtimes/runner-sheet.js.map +1 -1
  27. package/dist/client/pages/runtimes/workspace-diagnostics.d.ts +9 -0
  28. package/dist/client/pages/runtimes/workspace-diagnostics.d.ts.map +1 -0
  29. package/dist/client/pages/runtimes/workspace-diagnostics.js +58 -0
  30. package/dist/client/pages/runtimes/workspace-diagnostics.js.map +1 -0
  31. package/dist/client/runs/subject-runs.d.ts.map +1 -1
  32. package/dist/client/runs/subject-runs.js +2 -3
  33. package/dist/client/runs/subject-runs.js.map +1 -1
  34. package/dist/database/migrations/.manifest.json +8 -0
  35. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.d.ts +9 -0
  36. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.d.ts.map +1 -0
  37. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.js +30 -0
  38. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.js.map +1 -0
  39. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.d.ts +4 -0
  40. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.d.ts.map +1 -0
  41. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.js +23 -0
  42. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.js.map +1 -0
  43. package/dist/package.json +1 -1
  44. package/dist/server/composition.d.ts +3 -1
  45. package/dist/server/composition.d.ts.map +1 -1
  46. package/dist/server/composition.js +18 -2
  47. package/dist/server/composition.js.map +1 -1
  48. package/dist/server/core/runs/claim.d.ts +2 -0
  49. package/dist/server/core/runs/claim.d.ts.map +1 -1
  50. package/dist/server/core/runs/claim.js +53 -7
  51. package/dist/server/core/runs/claim.js.map +1 -1
  52. package/dist/server/core/runs/extensions.d.ts +57 -4
  53. package/dist/server/core/runs/extensions.d.ts.map +1 -1
  54. package/dist/server/core/runs/extensions.js +45 -9
  55. package/dist/server/core/runs/extensions.js.map +1 -1
  56. package/dist/server/core/runs/git-credentials.d.ts +43 -0
  57. package/dist/server/core/runs/git-credentials.d.ts.map +1 -0
  58. package/dist/server/core/runs/git-credentials.js +129 -0
  59. package/dist/server/core/runs/git-credentials.js.map +1 -0
  60. package/dist/server/core/runs/index.d.ts +2 -1
  61. package/dist/server/core/runs/index.d.ts.map +1 -1
  62. package/dist/server/core/runs/index.js +2 -1
  63. package/dist/server/core/runs/index.js.map +1 -1
  64. package/dist/server/core/runs/input-gate.d.ts +34 -0
  65. package/dist/server/core/runs/input-gate.d.ts.map +1 -0
  66. package/dist/server/core/runs/input-gate.js +56 -0
  67. package/dist/server/core/runs/input-gate.js.map +1 -0
  68. package/dist/server/core/runs/lifecycle.d.ts +2 -1
  69. package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
  70. package/dist/server/core/runs/lifecycle.js +27 -8
  71. package/dist/server/core/runs/lifecycle.js.map +1 -1
  72. package/dist/server/core/runs/policy.d.ts +8 -0
  73. package/dist/server/core/runs/policy.d.ts.map +1 -1
  74. package/dist/server/core/runs/policy.js +10 -0
  75. package/dist/server/core/runs/policy.js.map +1 -1
  76. package/dist/server/core/runs/ports.d.ts +30 -3
  77. package/dist/server/core/runs/ports.d.ts.map +1 -1
  78. package/dist/server/core/runs/ports.js.map +1 -1
  79. package/dist/server/core/runs/run-requests.d.ts +3 -0
  80. package/dist/server/core/runs/run-requests.d.ts.map +1 -1
  81. package/dist/server/core/runs/run-requests.js +5 -0
  82. package/dist/server/core/runs/run-requests.js.map +1 -1
  83. package/dist/server/core/runs/run.service.d.ts +5 -1
  84. package/dist/server/core/runs/run.service.d.ts.map +1 -1
  85. package/dist/server/core/runs/run.service.js +51 -3
  86. package/dist/server/core/runs/run.service.js.map +1 -1
  87. package/dist/server/core/runs/run.store.d.ts +5 -0
  88. package/dist/server/core/runs/run.store.d.ts.map +1 -1
  89. package/dist/server/core/runs/run.store.js +7 -0
  90. package/dist/server/core/runs/run.store.js.map +1 -1
  91. package/dist/server/core/runs/runner-view.d.ts +1 -0
  92. package/dist/server/core/runs/runner-view.d.ts.map +1 -1
  93. package/dist/server/core/runs/runner-view.js +2 -1
  94. package/dist/server/core/runs/runner-view.js.map +1 -1
  95. package/dist/server/core/runs/transitions.d.ts +1 -1
  96. package/dist/server/core/runs/transitions.d.ts.map +1 -1
  97. package/dist/server/core/runs/transitions.js +39 -5
  98. package/dist/server/core/runs/transitions.js.map +1 -1
  99. package/dist/server/kernel/redaction.d.ts +2 -0
  100. package/dist/server/kernel/redaction.d.ts.map +1 -1
  101. package/dist/server/kernel/redaction.js +17 -0
  102. package/dist/server/kernel/redaction.js.map +1 -1
  103. package/dist/server/routes/runners/dist.js +1 -1
  104. package/dist/server/routes/runners/dist.js.map +1 -1
  105. package/dist/server/routes/runners/runs.d.ts +1 -1
  106. package/dist/server/routes/runners/runs.d.ts.map +1 -1
  107. package/dist/server/routes/runners/runs.js +23 -3
  108. package/dist/server/routes/runners/runs.js.map +1 -1
  109. package/dist/server/routes/schemas.d.ts.map +1 -1
  110. package/dist/server/routes/schemas.js +17 -2
  111. package/dist/server/routes/schemas.js.map +1 -1
  112. package/dist/server/runners/runner.store.d.ts.map +1 -1
  113. package/dist/server/runners/runner.store.js +13 -3
  114. package/dist/server/runners/runner.store.js.map +1 -1
  115. package/dist/server/runners/workspaces.d.ts +7 -4
  116. package/dist/server/runners/workspaces.d.ts.map +1 -1
  117. package/dist/server/runners/workspaces.js +123 -26
  118. package/dist/server/runners/workspaces.js.map +1 -1
  119. package/dist/server/tokens.d.ts +2 -1
  120. package/dist/server/tokens.d.ts.map +1 -1
  121. package/dist/server/tokens.js +1 -0
  122. package/dist/server/tokens.js.map +1 -1
  123. package/dist/shared/models.js +1 -1
  124. package/dist/shared/models.js.map +1 -1
  125. package/dist/shared/runners.d.ts +6 -2
  126. package/dist/shared/runners.d.ts.map +1 -1
  127. package/dist/shared/runners.js.map +1 -1
  128. package/dist/shared/runs.d.ts +20 -0
  129. package/dist/shared/runs.d.ts.map +1 -1
  130. package/dist/shared/runs.js.map +1 -1
  131. package/package.json +4 -4
  132. package/skills/nocobase-app-plugin-agents/references/extension-points.md +7 -1
  133. package/skills/nocobase-app-plugin-agents/references/runners.md +6 -0
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@nocobase/app-plugin-agents",
3
3
  "displayName": "Agents",
4
4
  "description": "Agents for NocoBase applications: agents, the model services online agents call, their runs and conversations, and the runners people connect to run them (registration, the long-poll claim, slots, the sweeper, build jobs, and the runner and CLI tarballs the application serves).",
5
- "version": "0.1.0-beta.5",
5
+ "version": "0.1.0-beta.6",
6
6
  "type": "module",
7
7
  "prettier": "@nocobase/dev-config/prettier",
8
8
  "engines": {
@@ -143,8 +143,8 @@
143
143
  "sqlite-vec": "^0.1.9",
144
144
  "yaml": "^2.9.0",
145
145
  "zod": "^4.6.5",
146
- "@nocobase/agent-protocol": "^0.1.0-beta.3",
147
- "@nocobase/app-cli-client": "^0.1.0-beta.2",
146
+ "@nocobase/agent-protocol": "^0.1.0-beta.4",
147
+ "@nocobase/app-cli-client": "^0.1.0-beta.3",
148
148
  "@nocobase/cli-envelope": "^0.1.0-beta.0"
149
149
  },
150
150
  "peerDependencies": {
@@ -162,7 +162,7 @@
162
162
  "remark-gfm": "^4.0.1",
163
163
  "@nocobase/app-cli": "^1.0.0-beta.18",
164
164
  "@nocobase/app-client": "^3.0.0-beta.0",
165
- "@nocobase/app-plugin-authentication": "^2.0.0-beta.4",
165
+ "@nocobase/app-plugin-authentication": "^2.0.0-beta.5",
166
166
  "@nocobase/app-plugin-authorization": "^1.0.0-beta.26",
167
167
  "@nocobase/app-plugin-file": "^1.0.0-beta.22",
168
168
  "@nocobase/app-server": "^2.0.0-beta.3",
@@ -17,7 +17,7 @@ Everything the App contributes goes through `agentsToken` (`@nocobase/app-plugin
17
17
  | `reporting.usage`, `reporting.runFigures`, `reporting.range`, `reporting.modelUsage` | What runs used and cost, grouped as the App needs | The App's report pages |
18
18
  | `briefs.sections.register(provider)` | Sections added to every brief's context layer | Project conventions every run should read |
19
19
  | `mounts.register(provider)` | Directories of files placed beside the agent | Reference material for a run |
20
- | `repoAccess.register(provider)` | Commit identity and short-lived push credentials per run | Git hosting integration |
20
+ | `repoAccess.register(provider)` | Commit identity and short-lived push credentials per run, at the claim or, with `issue`, whenever the runner's git needs one (`gitCredentials` runners) | Git hosting integration |
21
21
  | `online.skills`, `online.gateway` | Skills every online run gets; the model gateway for the App's own model calls | See [Online agents](online-agents.md) |
22
22
  | `vectors.collection(spec)`, `vectors.stores.register` | Vector collections searched by meaning; another vector store type | Semantic search for a knowledge base |
23
23
 
@@ -35,3 +35,9 @@ Rules that are easy to miss:
35
35
  - `GET /api/agents/vocabulary` hands the browser the subjects, sources and scopes the App contributed; the browser never imports server code for them.
36
36
 
37
37
  The README's example under "Extension points" shows a subject registered and work enqueued and withdrawn.
38
+
39
+ A subject assembly may return `inputs` containing only the effective inputs for its current task. Render the task and turn from that same selection. Runner and online claims use it for delivery, brief sections and mounts; omitted inputs are resolved in the claim transaction and retained in the audit history, so polling and completion do not replay obsolete work. Omit the field to deliver all queued inputs.
40
+
41
+ A working run is held to the same policy: before input joins a dispatched or running run, and before pending input is delivered to one, the plugin asks `admit` and then `selectInputs` with that input. New input either hook keeps from the working run waits in a queued run for the claim to admit or cancel; pending input rejected or left out by `selectInputs` is marked handled instead of being delivered. Implement `selectInputs` with the same selection the assembly returns as `inputs`.
42
+
43
+ For issue/card work indicators, use `runs.workingOn(subjectKind, subjectIds)` after filtering visible subjects. It returns unique `{ subjectId, agentId, working: true }` pairs for dispatched/running runs in that exact scope, with no run details or global board cap. Match the current executor and apply the application's pending approval rules separately; queued/terminal runs do not appear. Pass a bounded batch from a view, rather than querying each card's full history.
@@ -1,5 +1,11 @@
1
1
  # Runners
2
2
 
3
+ ## Ended workspace diagnostics
4
+
5
+ For application-owned task cleanup, keep `SubjectWorkspaces.settled` conservative and optionally register `resolveKeys` for legacy directory keys and `commits` for trusted merged PR heads by repository URL. The plugin checks current or historical runner ownership and excludes nonterminal runs; directory keys alone never authorize lookup or cleanup. Use the head at merge time, not a squash merge commit. See `packages/plugins/app-plugin-agents/docs/workspace-cleanup.md` in the source repository for protocol and integration details.
6
+
7
+ Runtime pages distinguish application settlement from the runner's local cleanup check. An allowed check is not a deletion receipt. Directory diagnostics require explicit `canSeeMachine: true`; disk warnings use the report's measurement time and show expired or offline readings as prior reports. An ended workspace still stays when tracked changes, unpushed submodule commits, missing local objects or insufficient evidence prevent verification. Upgrade and serve both plugin and runner before expecting new diagnostics.
8
+
3
9
  A runner (shown as a runtime) is `nocobase-runner` from `@nocobase/agent-runner`, running on a server, a VM or someone's own device. It registers with one or more Apps, long-polls them for work and drives a coding tool for runner agents' runs. The wire protocol is `@nocobase/agent-protocol`. The README's "What it does" section (Runners, The claim, Runs, The sweep) and `@nocobase/agent-runner`'s README are the reference.
4
10
 
5
11
  ## Registering a runner