@llblab/pi-actors 0.17.1 → 0.19.0

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 (88) hide show
  1. package/AGENTS.md +6 -2
  2. package/BACKLOG.md +32 -26
  3. package/CHANGELOG.md +19 -3
  4. package/README.md +23 -8
  5. package/docs/actor-messages.md +5 -3
  6. package/docs/async-runs.md +3 -5
  7. package/docs/command-templates.md +2 -0
  8. package/docs/recipe-library.md +3 -1
  9. package/docs/task-first-recipes.md +29 -0
  10. package/docs/template-recipes.md +9 -14
  11. package/index.ts +111 -32
  12. package/lib/actor-inspector-tui.ts +192 -42
  13. package/lib/actor-rooms.ts +220 -26
  14. package/lib/async-runs.ts +59 -1
  15. package/lib/execution.ts +17 -0
  16. package/lib/file-state.ts +2 -1
  17. package/lib/observability.ts +82 -2
  18. package/lib/prompts.ts +2 -2
  19. package/lib/recipe-discovery.ts +86 -6
  20. package/lib/recipe-migration.ts +0 -2
  21. package/lib/recipe-references.ts +43 -10
  22. package/lib/temp.ts +55 -2
  23. package/lib/tools.ts +99 -11
  24. package/package.json +1 -1
  25. package/recipes/coordinator-locker.json +1 -2
  26. package/recipes/lens-swarm.json +0 -1
  27. package/recipes/locker.json +45 -0
  28. package/recipes/music-player.json +0 -1
  29. package/recipes/pipeline-architect-coordinator.json +0 -1
  30. package/recipes/pipeline-artifact-bundle.json +0 -1
  31. package/recipes/pipeline-artifact-report.json +0 -1
  32. package/recipes/pipeline-artifact-write.json +0 -1
  33. package/recipes/pipeline-async-run-ops.json +0 -1
  34. package/recipes/pipeline-checkpoint-continuation.json +0 -1
  35. package/recipes/pipeline-development-tasking.json +0 -1
  36. package/recipes/pipeline-docs-maintenance.json +0 -1
  37. package/recipes/pipeline-media-library.json +0 -1
  38. package/recipes/pipeline-quorum-review.json +0 -1
  39. package/recipes/pipeline-release-readiness.json +0 -1
  40. package/recipes/pipeline-release-summary.json +0 -1
  41. package/recipes/pipeline-repo-health.json +0 -1
  42. package/recipes/pipeline-research-synthesis.json +0 -1
  43. package/recipes/pipeline-review-readiness.json +0 -1
  44. package/recipes/pipeline-room-swarm.json +3 -2
  45. package/recipes/subagent-artifact.json +0 -1
  46. package/recipes/subagent-checkpoint.json +0 -1
  47. package/recipes/subagent-conflict-report.json +0 -1
  48. package/recipes/subagent-contradiction-map.json +0 -1
  49. package/recipes/subagent-critic.json +0 -1
  50. package/recipes/subagent-evidence-map.json +0 -1
  51. package/recipes/subagent-followup.json +0 -1
  52. package/recipes/subagent-judge.json +0 -1
  53. package/recipes/subagent-merge.json +0 -1
  54. package/recipes/subagent-message.json +0 -1
  55. package/recipes/subagent-normalize.json +0 -1
  56. package/recipes/subagent-plan.json +0 -1
  57. package/recipes/subagent-prompt.json +0 -1
  58. package/recipes/subagent-quorum.json +0 -1
  59. package/recipes/subagent-review-coordinator.json +0 -1
  60. package/recipes/subagent-review.json +0 -1
  61. package/recipes/subagent-task-card.json +0 -1
  62. package/recipes/subagent-tools.json +0 -1
  63. package/recipes/subagent-verify.json +0 -1
  64. package/recipes/subagents-prompts.json +0 -1
  65. package/recipes/utility-actor-message.json +0 -1
  66. package/recipes/utility-artifact-manifest.json +0 -1
  67. package/recipes/utility-artifact-write.json +0 -1
  68. package/recipes/utility-changelog-head.json +0 -1
  69. package/recipes/utility-changelog-section.json +0 -1
  70. package/recipes/utility-coordinator-lock-snapshot.json +0 -1
  71. package/recipes/utility-git-log.json +0 -1
  72. package/recipes/utility-git-status.json +0 -1
  73. package/recipes/utility-jsonl-tail.json +0 -1
  74. package/recipes/utility-markdown-index.json +0 -1
  75. package/recipes/utility-package-summary.json +0 -1
  76. package/recipes/utility-playlist-build.json +0 -1
  77. package/recipes/utility-playlist-scan.json +0 -1
  78. package/recipes/utility-run-ops-snapshot.json +0 -1
  79. package/recipes/utility-run-state-files.json +0 -1
  80. package/recipes/utility-run-summary.json +0 -1
  81. package/recipes/utility-skill-summary.json +0 -1
  82. package/recipes/utility-validate-recipe.json +0 -1
  83. package/recipes/utility-validation-wrapper.json +0 -1
  84. package/scripts/coordinator.mjs +434 -0
  85. package/scripts/{coordinator-locker.mjs → locker.mjs} +23 -22
  86. package/skills/actors/SKILL.md +26 -12
  87. package/skills/swarm/SKILL.md +15 -1
  88. package/scripts/room-swarm.mjs +0 -244
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-docs-maintenance",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "docs_index": "utility-markdown-index.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-media-library",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "playlist": "utility-playlist-build.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-quorum-review",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "quorum": "subagent-quorum.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-release-readiness",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "changelog": "utility-changelog-section.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-release-summary",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "changelog": "utility-changelog-section.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-repo-health",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "git_status": "utility-git-status.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-research-synthesis",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "planner": "subagent-plan.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "pipeline-review-readiness",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "coordinator": "subagent-review-coordinator.json"
@@ -1,7 +1,7 @@
1
1
  {
2
- "name": "pipeline-room-swarm",
3
2
  "async": true,
4
3
  "args": [
4
+ "mode:string",
5
5
  "mission:string",
6
6
  "model:string",
7
7
  "thinking:string",
@@ -15,6 +15,7 @@
15
15
  "repo:path"
16
16
  ],
17
17
  "defaults": {
18
+ "mode": "consensus",
18
19
  "thinking": "off",
19
20
  "roles": "",
20
21
  "roles_path": "",
@@ -45,5 +46,5 @@
45
46
  "run.failed"
46
47
  ]
47
48
  },
48
- "template": "{repo}/scripts/room-swarm.mjs --run-id={run_id} --mission={mission} --model={model} --thinking={thinking} --roles={roles} --roles-path={roles_path} --rounds={rounds} --delay={delay} --locker={locker} --locker-lease-ms={locker_lease_ms} --artifact-path={artifact_path}"
49
+ "template": "{repo}/scripts/coordinator.mjs --run-id={run_id} --mode={mode} --mission={mission} --model={model} --thinking={thinking} --roles={roles} --roles-path={roles_path} --rounds={rounds} --delay={delay} --locker={locker} --locker-lease-ms={locker_lease_ms} --artifact-path={artifact_path}"
49
50
  }
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-artifact",
3
2
  "async": true,
4
3
  "args": [
5
4
  "input:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-checkpoint",
3
2
  "async": true,
4
3
  "args": [
5
4
  "state:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-conflict-report",
3
2
  "async": true,
4
3
  "args": [
5
4
  "change:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-contradiction-map",
3
2
  "async": true,
4
3
  "args": [
5
4
  "inputs:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-critic",
3
2
  "async": true,
4
3
  "args": [
5
4
  "target:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-evidence-map",
3
2
  "async": true,
4
3
  "args": [
5
4
  "question:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-followup",
3
2
  "async": true,
4
3
  "args": [
5
4
  "checkpoint:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-judge",
3
2
  "async": true,
4
3
  "args": [
5
4
  "report:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-merge",
3
2
  "async": true,
4
3
  "args": [
5
4
  "inputs:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-message",
3
2
  "async": true,
4
3
  "args": [
5
4
  "type:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-normalize",
3
2
  "async": true,
4
3
  "args": [
5
4
  "input:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-plan",
3
2
  "async": true,
4
3
  "args": [
5
4
  "goal:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-prompt",
3
2
  "async": true,
4
3
  "args": [
5
4
  "prompt:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-quorum",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "subagent": "subagent-prompt.json"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-review-coordinator",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "reviewer": "subagent-review.json",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-review",
3
2
  "async": true,
4
3
  "args": [
5
4
  "scope:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-task-card",
3
2
  "async": true,
4
3
  "args": [
5
4
  "goal:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-tools",
3
2
  "async": true,
4
3
  "args": [
5
4
  "prompt:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagent-verify",
3
2
  "async": true,
4
3
  "args": [
5
4
  "claim:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "subagents-prompts",
3
2
  "async": true,
4
3
  "imports": {
5
4
  "subagent": "subagent-prompt.json"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-actor-message",
3
2
  "async": false,
4
3
  "args": [
5
4
  "type:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-artifact-manifest",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "artifact_path:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-artifact-write",
3
2
  "async": false,
4
3
  "args": [
5
4
  "repo:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-changelog-head",
3
2
  "args": [
4
3
  "file:path",
5
4
  "lines:int"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-changelog-section",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "file:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-coordinator-lock-snapshot",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "state_dir:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-git-log",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "count:int"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-git-status",
3
2
  "args": [
4
3
  "repo:path"
5
4
  ],
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-jsonl-tail",
3
2
  "args": [
4
3
  "file:path",
5
4
  "lines:int"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-markdown-index",
3
2
  "args": [
4
3
  "directory:path",
5
4
  "title:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-package-summary",
3
2
  "args": [
4
3
  "package_json:path",
5
4
  "repo:path"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-playlist-build",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "source_dir:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-playlist-scan",
3
2
  "args": [
4
3
  "source_dir:path",
5
4
  "max_depth:int"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-run-ops-snapshot",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "state_root:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-run-state-files",
3
2
  "args": [
4
3
  "state_root:path",
5
4
  "file_name:string",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-run-summary",
3
2
  "args": [
4
3
  "repo:path",
5
4
  "state_root:path"
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-skill-summary",
3
2
  "args": [
4
3
  "skill:path",
5
4
  "package_json:path",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-validate-recipe",
3
2
  "args": [
4
3
  "target:path",
5
4
  "all:bool",
@@ -1,5 +1,4 @@
1
1
  {
2
- "name": "utility-validation-wrapper",
3
2
  "args": [
4
3
  "command:string",
5
4
  "scope:string",