@elizaos/plugin-agent-orchestrator 2.0.0-alpha.4 → 2.0.0-alpha.537

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 (190) hide show
  1. package/README.md +233 -0
  2. package/assets/claude-code-skills/eliza-runtime/SKILL.md +123 -0
  3. package/assets/claude-code-skills/eliza-runtime/references/hooks.md +82 -0
  4. package/assets/claude-code-skills/eliza-runtime/references/orchestration.md +68 -0
  5. package/assets/claude-code-skills/eliza-runtime/references/synthesis.md +84 -0
  6. package/assets/claude-code-skills/eliza-runtime/scripts/eliza-context.sh +103 -0
  7. package/assets/claude-code-skills/eliza-runtime/scripts/eliza-decision.sh +48 -0
  8. package/assets/claude-code-skills/eliza-runtime/scripts/eliza-parent.sh +143 -0
  9. package/dist/actions/coding-task-handlers.d.ts +64 -0
  10. package/dist/actions/coding-task-handlers.d.ts.map +1 -0
  11. package/dist/actions/coding-task-helpers.d.ts +35 -0
  12. package/dist/actions/coding-task-helpers.d.ts.map +1 -0
  13. package/dist/actions/eval-metadata.d.ts +11 -0
  14. package/dist/actions/eval-metadata.d.ts.map +1 -0
  15. package/dist/actions/finalize-workspace.d.ts +11 -0
  16. package/dist/actions/finalize-workspace.d.ts.map +1 -0
  17. package/dist/actions/list-agents.d.ts +13 -0
  18. package/dist/actions/list-agents.d.ts.map +1 -0
  19. package/dist/actions/manage-issues.d.ts +11 -0
  20. package/dist/actions/manage-issues.d.ts.map +1 -0
  21. package/dist/actions/provision-workspace.d.ts +11 -0
  22. package/dist/actions/provision-workspace.d.ts.map +1 -0
  23. package/dist/actions/send-to-agent.d.ts +12 -0
  24. package/dist/actions/send-to-agent.d.ts.map +1 -0
  25. package/dist/actions/spawn-agent.d.ts +12 -0
  26. package/dist/actions/spawn-agent.d.ts.map +1 -0
  27. package/dist/actions/start-coding-task.d.ts +69 -0
  28. package/dist/actions/start-coding-task.d.ts.map +1 -0
  29. package/dist/actions/stop-agent.d.ts +12 -0
  30. package/dist/actions/stop-agent.d.ts.map +1 -0
  31. package/dist/actions/task-control.d.ts +3 -0
  32. package/dist/actions/task-control.d.ts.map +1 -0
  33. package/dist/actions/task-history.d.ts +3 -0
  34. package/dist/actions/task-history.d.ts.map +1 -0
  35. package/dist/actions/task-share.d.ts +3 -0
  36. package/dist/actions/task-share.d.ts.map +1 -0
  37. package/dist/actions/task-thread-target.d.ts +11 -0
  38. package/dist/actions/task-thread-target.d.ts.map +1 -0
  39. package/dist/api/agent-routes.d.ts +18 -0
  40. package/dist/api/agent-routes.d.ts.map +1 -0
  41. package/dist/api/bridge-routes.d.ts +32 -0
  42. package/dist/api/bridge-routes.d.ts.map +1 -0
  43. package/dist/api/coordinator-routes.d.ts +22 -0
  44. package/dist/api/coordinator-routes.d.ts.map +1 -0
  45. package/dist/api/hook-routes.d.ts +18 -0
  46. package/dist/api/hook-routes.d.ts.map +1 -0
  47. package/dist/api/issue-routes.d.ts +17 -0
  48. package/dist/api/issue-routes.d.ts.map +1 -0
  49. package/dist/api/parent-context-routes.d.ts +17 -0
  50. package/dist/api/parent-context-routes.d.ts.map +1 -0
  51. package/dist/api/routes.d.ts +37 -0
  52. package/dist/api/routes.d.ts.map +1 -0
  53. package/dist/api/workspace-routes.d.ts +17 -0
  54. package/dist/api/workspace-routes.d.ts.map +1 -0
  55. package/dist/index.d.ts +36 -15
  56. package/dist/index.d.ts.map +1 -1
  57. package/dist/index.js +19824 -3408
  58. package/dist/index.js.map +72 -22
  59. package/dist/providers/action-examples.d.ts +14 -0
  60. package/dist/providers/action-examples.d.ts.map +1 -0
  61. package/dist/providers/active-workspace-context.d.ts +13 -0
  62. package/dist/providers/active-workspace-context.d.ts.map +1 -0
  63. package/dist/services/agent-credentials.d.ts +23 -0
  64. package/dist/services/agent-credentials.d.ts.map +1 -0
  65. package/dist/services/agent-metrics.d.ts +30 -0
  66. package/dist/services/agent-metrics.d.ts.map +1 -0
  67. package/dist/services/agent-selection.d.ts +53 -0
  68. package/dist/services/agent-selection.d.ts.map +1 -0
  69. package/dist/services/ansi-utils.d.ts +61 -0
  70. package/dist/services/ansi-utils.d.ts.map +1 -0
  71. package/dist/services/claude-code-skill-installer.d.ts +33 -0
  72. package/dist/services/claude-code-skill-installer.d.ts.map +1 -0
  73. package/dist/services/config-env.d.ts +23 -0
  74. package/dist/services/config-env.d.ts.map +1 -0
  75. package/dist/services/coordinator-event-normalizer.d.ts +50 -0
  76. package/dist/services/coordinator-event-normalizer.d.ts.map +1 -0
  77. package/dist/services/custom-validator-runner.d.ts +66 -0
  78. package/dist/services/custom-validator-runner.d.ts.map +1 -0
  79. package/dist/services/debug-capture.d.ts +38 -0
  80. package/dist/services/debug-capture.d.ts.map +1 -0
  81. package/dist/services/pty-auto-response.d.ts +30 -0
  82. package/dist/services/pty-auto-response.d.ts.map +1 -0
  83. package/dist/services/pty-init.d.ts +54 -0
  84. package/dist/services/pty-init.d.ts.map +1 -0
  85. package/dist/services/pty-service.d.ts +206 -0
  86. package/dist/services/pty-service.d.ts.map +1 -0
  87. package/dist/services/pty-session-io.d.ts +49 -0
  88. package/dist/services/pty-session-io.d.ts.map +1 -0
  89. package/dist/services/pty-spawn.d.ts +113 -0
  90. package/dist/services/pty-spawn.d.ts.map +1 -0
  91. package/dist/services/pty-types.d.ts +94 -0
  92. package/dist/services/pty-types.d.ts.map +1 -0
  93. package/dist/services/repo-input.d.ts +16 -0
  94. package/dist/services/repo-input.d.ts.map +1 -0
  95. package/dist/services/session-event-queue.d.ts +25 -0
  96. package/dist/services/session-event-queue.d.ts.map +1 -0
  97. package/dist/services/skill-callback-bridge.d.ts +78 -0
  98. package/dist/services/skill-callback-bridge.d.ts.map +1 -0
  99. package/dist/services/skill-essentials.d.ts +16 -0
  100. package/dist/services/skill-essentials.d.ts.map +1 -0
  101. package/dist/services/skill-lifeops-context-broker.d.ts +20 -0
  102. package/dist/services/skill-lifeops-context-broker.d.ts.map +1 -0
  103. package/dist/services/skill-manifest.d.ts +48 -0
  104. package/dist/services/skill-manifest.d.ts.map +1 -0
  105. package/dist/services/skill-recommender.d.ts +51 -0
  106. package/dist/services/skill-recommender.d.ts.map +1 -0
  107. package/dist/services/stall-classifier.d.ts +69 -0
  108. package/dist/services/stall-classifier.d.ts.map +1 -0
  109. package/dist/services/structured-proof-bridge.d.ts +99 -0
  110. package/dist/services/structured-proof-bridge.d.ts.map +1 -0
  111. package/dist/services/swarm-coordinator-prompts.d.ts +97 -0
  112. package/dist/services/swarm-coordinator-prompts.d.ts.map +1 -0
  113. package/dist/services/swarm-coordinator.d.ts +471 -0
  114. package/dist/services/swarm-coordinator.d.ts.map +1 -0
  115. package/dist/services/swarm-decision-loop.d.ts +52 -0
  116. package/dist/services/swarm-decision-loop.d.ts.map +1 -0
  117. package/dist/services/swarm-event-triage.d.ts +49 -0
  118. package/dist/services/swarm-event-triage.d.ts.map +1 -0
  119. package/dist/services/swarm-history.d.ts +27 -0
  120. package/dist/services/swarm-history.d.ts.map +1 -0
  121. package/dist/services/swarm-idle-watchdog.d.ts +22 -0
  122. package/dist/services/swarm-idle-watchdog.d.ts.map +1 -0
  123. package/dist/services/task-acceptance.d.ts +8 -0
  124. package/dist/services/task-acceptance.d.ts.map +1 -0
  125. package/dist/services/task-agent-auth.d.ts +69 -0
  126. package/dist/services/task-agent-auth.d.ts.map +1 -0
  127. package/dist/services/task-agent-frameworks.d.ts +90 -0
  128. package/dist/services/task-agent-frameworks.d.ts.map +1 -0
  129. package/dist/services/task-kind.d.ts +3 -0
  130. package/dist/services/task-kind.d.ts.map +1 -0
  131. package/dist/services/task-policy.d.ts +17 -0
  132. package/dist/services/task-policy.d.ts.map +1 -0
  133. package/dist/services/task-registry.d.ts +550 -0
  134. package/dist/services/task-registry.d.ts.map +1 -0
  135. package/dist/services/task-share.d.ts +18 -0
  136. package/dist/services/task-share.d.ts.map +1 -0
  137. package/dist/services/task-validation.d.ts +69 -0
  138. package/dist/services/task-validation.d.ts.map +1 -0
  139. package/dist/services/task-verifier-runner.d.ts +5 -0
  140. package/dist/services/task-verifier-runner.d.ts.map +1 -0
  141. package/dist/services/trajectory-context.d.ts +73 -0
  142. package/dist/services/trajectory-context.d.ts.map +1 -0
  143. package/dist/services/trajectory-feedback.d.ts +53 -0
  144. package/dist/services/trajectory-feedback.d.ts.map +1 -0
  145. package/dist/services/workspace-git-ops.d.ts +28 -0
  146. package/dist/services/workspace-git-ops.d.ts.map +1 -0
  147. package/dist/services/workspace-github.d.ts +60 -0
  148. package/dist/services/workspace-github.d.ts.map +1 -0
  149. package/dist/services/workspace-lifecycle.d.ts +18 -0
  150. package/dist/services/workspace-lifecycle.d.ts.map +1 -0
  151. package/dist/services/workspace-service.d.ts +121 -0
  152. package/dist/services/workspace-service.d.ts.map +1 -0
  153. package/dist/services/workspace-types.d.ts +81 -0
  154. package/dist/services/workspace-types.d.ts.map +1 -0
  155. package/package.json +28 -33
  156. package/scripts/ensure-node-pty.mjs +100 -0
  157. package/dist/src/actions/messaging.d.ts +0 -24
  158. package/dist/src/actions/messaging.d.ts.map +0 -1
  159. package/dist/src/actions/subagent-management.d.ts +0 -7
  160. package/dist/src/actions/subagent-management.d.ts.map +0 -1
  161. package/dist/src/actions/task-management.d.ts +0 -9
  162. package/dist/src/actions/task-management.d.ts.map +0 -1
  163. package/dist/src/config.d.ts +0 -4
  164. package/dist/src/config.d.ts.map +0 -1
  165. package/dist/src/providers/orchestrator-config.d.ts +0 -80
  166. package/dist/src/providers/orchestrator-config.d.ts.map +0 -1
  167. package/dist/src/providers/task-context.d.ts +0 -3
  168. package/dist/src/providers/task-context.d.ts.map +0 -1
  169. package/dist/src/services/agent-orchestrator-service.d.ts +0 -59
  170. package/dist/src/services/agent-orchestrator-service.d.ts.map +0 -1
  171. package/dist/src/services/messaging-service.d.ts +0 -111
  172. package/dist/src/services/messaging-service.d.ts.map +0 -1
  173. package/dist/src/services/sandbox-service.d.ts +0 -103
  174. package/dist/src/services/sandbox-service.d.ts.map +0 -1
  175. package/dist/src/services/subagent-service.d.ts +0 -110
  176. package/dist/src/services/subagent-service.d.ts.map +0 -1
  177. package/dist/src/types/index.d.ts +0 -12
  178. package/dist/src/types/index.d.ts.map +0 -1
  179. package/dist/src/types/messaging.d.ts +0 -202
  180. package/dist/src/types/messaging.d.ts.map +0 -1
  181. package/dist/src/types/sandbox.d.ts +0 -228
  182. package/dist/src/types/sandbox.d.ts.map +0 -1
  183. package/dist/src/types/subagent.d.ts +0 -224
  184. package/dist/src/types/subagent.d.ts.map +0 -1
  185. package/dist/src/types.d.ts +0 -113
  186. package/dist/src/types.d.ts.map +0 -1
  187. package/dist/src/utils/index.d.ts +0 -7
  188. package/dist/src/utils/index.d.ts.map +0 -1
  189. package/dist/src/utils/session.d.ts +0 -106
  190. package/dist/src/utils/session.d.ts.map +0 -1
@@ -0,0 +1,103 @@
1
+ #!/usr/bin/env bash
2
+ # Print the orchestration context for the current Eliza sub-agent session.
3
+ #
4
+ # Usage: bash scripts/eliza-context.sh
5
+ #
6
+ # Output is `key=value` lines, grep/sed-friendly, parseable from prose.
7
+ #
8
+ # Detection covers all three Eliza spawn variants:
9
+ # - swarm (multi-agent CREATE_TASK; CLAUDE.md present, hooks installed)
10
+ # - repo (single-agent CREATE_TASK in a real repo; CLAUDE.md absent, hooks installed)
11
+ # - scratch (SPAWN_AGENT in a scratch workspace; CLAUDE.md absent, hooks NOT installed)
12
+ #
13
+ # The variant matters because hook-dependent features (e.g. structured DECISION
14
+ # events via the parent's HTTP endpoint) only work in `swarm` and `repo`.
15
+ # In `scratch`, your durable channel is stdout — emit `DECISION: ...` lines
16
+ # there and the orchestrator captures them from the PTY tail.
17
+
18
+ set -u
19
+
20
+ session_id="${PARALLAX_SESSION_ID:-}"
21
+ hook_port="${ELIZA_HOOK_PORT:-2138}"
22
+ workdir="$PWD"
23
+ agent_user="$USER"
24
+ model="${ANTHROPIC_MODEL:-unset}"
25
+ small_model="${ANTHROPIC_SMALL_FAST_MODEL:-unset}"
26
+ github_token_set="$([ -n "${GITHUB_TOKEN:-}" ] && echo yes || echo no)"
27
+
28
+ # Detect Eliza-injected files in this workspace.
29
+ claude_md_present="no"
30
+ claude_settings_present="no"
31
+ hook_url_in_settings="no"
32
+ allowed_dirs_in_settings="no"
33
+ [ -f "$workdir/CLAUDE.md" ] && claude_md_present="yes"
34
+ if [ -f "$workdir/.claude/settings.json" ]; then
35
+ claude_settings_present="yes"
36
+ grep -q "coding-agents/hooks" "$workdir/.claude/settings.json" 2>/dev/null && hook_url_in_settings="yes"
37
+ grep -q "allowedDirectories" "$workdir/.claude/settings.json" 2>/dev/null && allowed_dirs_in_settings="yes"
38
+ fi
39
+
40
+ # Best-effort: extract task label from CLAUDE.md when present.
41
+ agent_label="unknown"
42
+ if [ "$claude_md_present" = "yes" ]; then
43
+ label=$(grep -oE 'You are agent "[^"]+"' "$workdir/CLAUDE.md" 2>/dev/null | head -1 | sed -E 's/.*"([^"]+)".*/\1/')
44
+ [ -n "$label" ] && agent_label="$label"
45
+ fi
46
+
47
+ # Variant detection from observed signals.
48
+ # Source-of-truth signals:
49
+ # CLAUDE.md present + hooks in settings → swarm
50
+ # CLAUDE.md absent + hooks in settings → repo
51
+ # CLAUDE.md absent + no hooks → scratch
52
+ # anything else → unknown
53
+ variant="unknown"
54
+ if [ "$claude_md_present" = "yes" ] && [ "$hook_url_in_settings" = "yes" ]; then
55
+ variant="swarm"
56
+ elif [ "$claude_md_present" = "no" ] && [ "$hook_url_in_settings" = "yes" ]; then
57
+ variant="repo"
58
+ elif [ "$claude_md_present" = "no" ] && [ "$hook_url_in_settings" = "no" ] && [ -n "$session_id" ]; then
59
+ variant="scratch"
60
+ fi
61
+
62
+ # What features are available in this variant?
63
+ # stdout DECISION pickup → ALWAYS works (orchestrator tails PTY)
64
+ # HTTP hook events → works in swarm + repo
65
+ # CLAUDE.md task brief → exists only in swarm
66
+ hooks_available="no"
67
+ [ "$hook_url_in_settings" = "yes" ] && hooks_available="yes"
68
+
69
+ claude_md_brief="no"
70
+ [ "$claude_md_present" = "yes" ] && claude_md_brief="yes"
71
+
72
+ cat <<KV
73
+ session_id=$session_id
74
+ agent_user=$agent_user
75
+ agent_label=$agent_label
76
+ workdir=$workdir
77
+ variant=$variant
78
+ parent_hook_url=http://localhost:$hook_port/api/coding-agents/hooks
79
+ hooks_available=$hooks_available
80
+ claude_md_brief=$claude_md_brief
81
+ claude_settings_present=$claude_settings_present
82
+ allowed_dirs_in_settings=$allowed_dirs_in_settings
83
+ hook_url_in_settings=$hook_url_in_settings
84
+ model=$model
85
+ small_model=$small_model
86
+ github_token_set=$github_token_set
87
+ KV
88
+
89
+ if [ -z "$session_id" ]; then
90
+ echo "advice=PARALLAX_SESSION_ID is unset — eliza-runtime skill does not apply to this session." >&2
91
+ exit 1
92
+ fi
93
+
94
+ if [ "$variant" = "scratch" ]; then
95
+ cat >&2 <<'ADVICE'
96
+ advice=variant=scratch — HTTP hooks are NOT installed for scratch tasks.
97
+ Your durable channel back to the parent is stdout.
98
+ Use plain `DECISION: ...` lines in your output (the orchestrator
99
+ tails PTY output and captures them via grep). The
100
+ `scripts/eliza-decision.sh` helper still works (echoes to stdout
101
+ AND best-efforts the HTTP POST), but only the stdout half lands.
102
+ ADVICE
103
+ fi
@@ -0,0 +1,48 @@
1
+ #!/usr/bin/env bash
2
+ # Emit an explicit DECISION event to the Eliza orchestrator's hook channel.
3
+ #
4
+ # Usage: bash scripts/eliza-decision.sh "your decision text"
5
+ #
6
+ # Writes the same structured shape Eliza's swarm-decision-loop captures
7
+ # from your stdout. Use this when you want the decision recorded by the
8
+ # orchestrator regardless of whether the orchestrator is currently
9
+ # scanning your stdout (e.g. you've moved to a new turn but want the
10
+ # decision attributed to the prior step).
11
+ #
12
+ # Best-effort. Failures are logged to stderr but never fatal — the
13
+ # orchestrator's primary capture path is your stdout, and this is just
14
+ # a complementary out-of-band channel.
15
+
16
+ set -u
17
+
18
+ if [ -z "${1:-}" ]; then
19
+ echo "usage: eliza-decision.sh \"your decision text\"" >&2
20
+ exit 1
21
+ fi
22
+
23
+ decision_text="$1"
24
+ session_id="${PARALLAX_SESSION_ID:-}"
25
+ hook_port="${ELIZA_HOOK_PORT:-2138}"
26
+
27
+ if [ -z "$session_id" ]; then
28
+ echo "eliza-decision: PARALLAX_SESSION_ID unset — not a Eliza session, skipping." >&2
29
+ exit 1
30
+ fi
31
+
32
+ # Echo it to stdout so the primary capture path also picks it up.
33
+ # Eliza's swarm-decision-loop greps for "DECISION:" prefix in raw output.
34
+ printf 'DECISION: %s\n' "$decision_text"
35
+
36
+ # Best-effort hook POST — if curl is missing or the parent is unreachable,
37
+ # the stdout echo above is the durable record.
38
+ if command -v curl >/dev/null 2>&1; then
39
+ curl --silent --max-time 3 \
40
+ -X POST "http://localhost:$hook_port/api/coding-agents/hooks" \
41
+ -H "content-type: application/json" \
42
+ -d "$(printf '{"event":"decision","sessionId":"%s","data":{"text":%s}}' \
43
+ "$session_id" \
44
+ "$(printf '%s' "$decision_text" | python3 -c 'import sys,json;print(json.dumps(sys.stdin.read()))' 2>/dev/null \
45
+ || printf '"%s"' "$decision_text")")" \
46
+ >/dev/null 2>&1 \
47
+ || echo "eliza-decision: hook POST failed (stdout echo above is the record)" >&2
48
+ fi
@@ -0,0 +1,143 @@
1
+ #!/usr/bin/env bash
2
+ # Read parent Eliza runtime state via the bridge endpoints.
3
+ #
4
+ # Usage:
5
+ # bash scripts/eliza-parent.sh context # GET parent-context
6
+ # bash scripts/eliza-parent.sh memory [query] # GET memory?q=<query>
7
+ # bash scripts/eliza-parent.sh peers # GET active-workspaces
8
+ #
9
+ # All endpoints are read-only. The sub-agent cannot mutate parent state
10
+ # through this helper — only inspect.
11
+ #
12
+ # Endpoints come from the @elizaos/plugin-agent-orchestrator bridge routes
13
+ # (see references/hooks.md for the API contract). They require:
14
+ # - PARALLAX_SESSION_ID set (this script's session is registered with the parent)
15
+ # - The parent's API server reachable at localhost:$ELIZA_HOOK_PORT (default 2138)
16
+ # - The session in non-terminal state (active or tool_running) — terminated
17
+ # sessions return 410.
18
+ #
19
+ # Best-effort. If the bridge isn't available (older orchestrator without bridge
20
+ # routes, or network issue), the script reports the failure on stderr and
21
+ # exits non-zero so the caller can fall back to "no parent context".
22
+
23
+ set -u
24
+
25
+ CMD="${1:-help}"
26
+ ARG="${2:-}"
27
+
28
+ session_id="${PARALLAX_SESSION_ID:-}"
29
+ hook_port="${ELIZA_HOOK_PORT:-2138}"
30
+ base="http://localhost:$hook_port/api/coding-agents/$session_id"
31
+
32
+ # Help is always free; everything else needs an active session + curl.
33
+ if [ "$CMD" != "help" ] && [ "$CMD" != "--help" ] && [ "$CMD" != "-h" ]; then
34
+ if [ -z "$session_id" ]; then
35
+ echo "eliza-parent: PARALLAX_SESSION_ID is not set — not a Eliza session." >&2
36
+ exit 1
37
+ fi
38
+ if ! command -v curl >/dev/null 2>&1; then
39
+ echo "eliza-parent: curl not found in PATH — bridge endpoints unreachable." >&2
40
+ exit 1
41
+ fi
42
+ fi
43
+
44
+ call() {
45
+ # call <path> — GET against $base/<path>, fail loudly on non-2xx.
46
+ local path="$1"
47
+ local url="$base/$path"
48
+ local response status
49
+ response=$(curl -s -w "%{http_code}" --max-time 5 "$url")
50
+ status="${response: -3}"
51
+ response="${response%???}"
52
+ if [ "$status" = "200" ]; then
53
+ printf '%s' "$response"
54
+ return 0
55
+ fi
56
+ case "$status" in
57
+ 404) echo "eliza-parent: session $session_id is unknown to the parent (404). Is the bridge installed?" >&2 ;;
58
+ 410) echo "eliza-parent: session $session_id is in terminal state (410). Parent context no longer available." >&2 ;;
59
+ 000) echo "eliza-parent: parent unreachable at $url. Bridge may not be exposed on port $hook_port." >&2 ;;
60
+ *) echo "eliza-parent: unexpected HTTP $status from $url. Body: $response" >&2 ;;
61
+ esac
62
+ return 1
63
+ }
64
+
65
+ case "$CMD" in
66
+ context|parent-context)
67
+ # Pretty-print the parent context as key=value lines for easy parsing.
68
+ body=$(call "parent-context") || exit 1
69
+ printf '%s' "$body" | python3 -c "
70
+ import sys, json
71
+ d = json.load(sys.stdin)
72
+ character = d.get('character', {}) or {}
73
+ room = d.get('room')
74
+ print(f\"agent_label={d.get('agent_label')}\")
75
+ print(f\"workdir={d.get('workdir')}\")
76
+ print(f\"agent_type={d.get('agent_type')}\")
77
+ print(f\"repo={d.get('repo') or 'none'}\")
78
+ print(f\"character_name={character.get('name')}\")
79
+ bio = character.get('bio') or []
80
+ if isinstance(bio, list):
81
+ print(f\"character_bio={' | '.join(bio[:3])[:300]}\" if bio else 'character_bio=')
82
+ else:
83
+ print(f'character_bio={str(bio)[:300]}')
84
+ topics = character.get('topics') or []
85
+ print(f\"character_topics={','.join(topics[:8])}\" if topics else 'character_topics=')
86
+ if room:
87
+ print(f\"room_id={room.get('id')}\")
88
+ print(f\"thread_id={room.get('thread_id')}\")
89
+ else:
90
+ print('room_id=')
91
+ print('thread_id=')
92
+ print(f\"original_task={(d.get('original_task') or '')[:300]}\")
93
+ " 2>/dev/null || printf '%s\n' "$body"
94
+ ;;
95
+ memory)
96
+ # Search memory in the originating room. Optional query string narrows results.
97
+ if [ -n "$ARG" ]; then
98
+ body=$(call "memory?q=$(python3 -c "import urllib.parse,sys;print(urllib.parse.quote(sys.argv[1]))" "$ARG")&limit=10") || exit 1
99
+ else
100
+ body=$(call "memory?limit=10") || exit 1
101
+ fi
102
+ printf '%s' "$body" | python3 -c "
103
+ import sys, json
104
+ d = json.load(sys.stdin)
105
+ print(f\"room_id={d.get('room_id')}\")
106
+ print(f\"count={d.get('count')}\")
107
+ print(f\"query={d.get('query') or '(none)'}\")
108
+ print('---')
109
+ for m in d.get('messages', []):
110
+ print(f\"[{m.get('speaker','?')}] {m.get('text','')}\")
111
+ " 2>/dev/null || printf '%s\n' "$body"
112
+ ;;
113
+ peers|active-workspaces)
114
+ body=$(call "active-workspaces") || exit 1
115
+ printf '%s' "$body" | python3 -c "
116
+ import sys, json
117
+ d = json.load(sys.stdin)
118
+ print(f\"peer_count={d.get('count')}\")
119
+ for w in d.get('workspaces', []):
120
+ print(f\"- {w.get('label')} ({w.get('agent_type')}) workdir={w.get('workdir')} repo={w.get('repo') or 'none'}\")
121
+ " 2>/dev/null || printf '%s\n' "$body"
122
+ ;;
123
+ help|--help|-h|"")
124
+ cat <<'HELP'
125
+ eliza-parent — read parent Eliza runtime state via bridge endpoints
126
+
127
+ context dump the agent's character, current room, workdir, original task
128
+ memory [q] read recent messages from the originating room (optional substring filter)
129
+ peers list active sibling sub-agents (sessions other than this one)
130
+
131
+ Notes:
132
+ - Read-only. There is no write API.
133
+ - Returns key=value lines on success; non-zero exit + stderr on failure.
134
+ - Requires the parent's bridge routes (in @elizaos/plugin-agent-orchestrator).
135
+ On older orchestrators without the bridge, calls return 404 — fall back
136
+ to no-parent-context mode.
137
+ HELP
138
+ ;;
139
+ *)
140
+ echo "eliza-parent: unknown command '$CMD' (try: context | memory | peers | help)" >&2
141
+ exit 1
142
+ ;;
143
+ esac
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Handler logic for the START_CODING_TASK action.
3
+ *
4
+ * handleMultiAgent() handles both multi-agent and single-agent modes.
5
+ * A single-agent call is just a length-1 agent spec.
6
+ *
7
+ * @module actions/coding-task-handlers
8
+ */
9
+ import { type ActionResult, type HandlerCallback, type IAgentRuntime, type Memory, type State } from "@elizaos/core";
10
+ import type { AgentCredentials } from "coding-agent-adapters";
11
+ import type { AgentSelectionStrategy } from "../services/agent-selection.js";
12
+ import type { PTYService } from "../services/pty-service.js";
13
+ import { type CodingAgentType } from "../services/pty-types.js";
14
+ import { type SkillSessionAllowList } from "../services/skill-callback-bridge.js";
15
+ import type { CodingWorkspaceService } from "../services/workspace-service.js";
16
+ export declare function getSkillSessionAllowList(): SkillSessionAllowList;
17
+ /** Shared context passed to both multi-agent and single-agent handlers */
18
+ export interface CodingTaskContext {
19
+ runtime: IAgentRuntime;
20
+ ptyService: PTYService;
21
+ wsService: CodingWorkspaceService | undefined;
22
+ credentials: AgentCredentials;
23
+ customCredentials: Record<string, string> | undefined;
24
+ callback: HandlerCallback | undefined;
25
+ message: Memory;
26
+ state: State | undefined;
27
+ repo: string | undefined;
28
+ defaultAgentType: CodingAgentType;
29
+ rawAgentType: string;
30
+ agentTypeExplicit: boolean;
31
+ agentSelectionStrategy: AgentSelectionStrategy;
32
+ memoryContent: string | undefined;
33
+ approvalPreset: string | undefined;
34
+ explicitLabel: string | undefined;
35
+ /**
36
+ * Optional caller-supplied custom validator spec. Forwarded verbatim into
37
+ * the task's session metadata so the swarm decision loop can resolve and
38
+ * invoke it after the child claims `done`. Shape matches
39
+ * `CustomValidatorSpec` in `services/custom-validator-runner.ts`.
40
+ */
41
+ validator?: {
42
+ service: string;
43
+ method: string;
44
+ params: Record<string, unknown>;
45
+ };
46
+ /** Optional override for ELIZA_APP_VERIFICATION_MAX_RETRIES. */
47
+ maxRetries?: number;
48
+ /** Optional verdict-fail behavior. Defaults to "retry". */
49
+ onVerificationFail?: "retry" | "escalate";
50
+ /**
51
+ * Optional originating roomId — when set, persisted onto session metadata
52
+ * so the verification-room-bridge can post the verdict back to the right
53
+ * chat room. Set by APP.create / PLUGIN.create dispatchers.
54
+ */
55
+ originRoomId?: string;
56
+ }
57
+ /**
58
+ * Multi-agent mode handler.
59
+ *
60
+ * Parses pipe-delimited agent specs and spawns each agent in its own
61
+ * workspace clone (or scratch directory).
62
+ */
63
+ export declare function handleMultiAgent(ctx: CodingTaskContext, agentsParam: string): Promise<ActionResult | undefined>;
64
+ //# sourceMappingURL=coding-task-handlers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-task-handlers.d.ts","sourceRoot":"","sources":["../../src/actions/coding-task-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EACL,KAAK,YAAY,EAEjB,KAAK,eAAe,EACpB,KAAK,aAAa,EAElB,KAAK,MAAM,EAEX,KAAK,KAAK,EAEX,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAkB,MAAM,uBAAuB,CAAC;AAE9E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAE7D,OAAO,EACL,KAAK,eAAe,EAOrB,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAGL,KAAK,qBAAqB,EAC3B,MAAM,sCAAsC,CAAC;AAmB9C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AA8C/E,wBAAgB,wBAAwB,IAAI,qBAAqB,CAEhE;AAgfD,0EAA0E;AAC1E,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,aAAa,CAAC;IACvB,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,sBAAsB,GAAG,SAAS,CAAC;IAC9C,WAAW,EAAE,gBAAgB,CAAC;IAC9B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAAC;IACtD,QAAQ,EAAE,eAAe,GAAG,SAAS,CAAC;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,GAAG,SAAS,CAAC;IACzB,IAAI,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,gBAAgB,EAAE,eAAe,CAAC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,cAAc,EAAE,MAAM,GAAG,SAAS,CAAC;IACnC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC;;;;;OAKG;IACH,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,CAAC;IACF,gEAAgE;IAChE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC1C;;;;OAIG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,iBAAiB,EACtB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC,CAogBnC"}
@@ -0,0 +1,35 @@
1
+ /**
2
+ * Helper functions for the START_CODING_TASK action.
3
+ *
4
+ * - createScratchDir() -- Creates a scratch sandbox directory for non-repo tasks
5
+ * - generateLabel() -- Generate a short semantic label from repo URL and/or task description
6
+ * - registerSessionEvents() -- Register lifecycle event handlers for a spawned session
7
+ *
8
+ * @module actions/coding-task-helpers
9
+ */
10
+ import type { IAgentRuntime } from "@elizaos/core";
11
+ import { type HandlerCallback } from "@elizaos/core";
12
+ import type { PTYService } from "../services/pty-service.js";
13
+ import type { SkillSessionAllowList } from "../services/skill-callback-bridge.js";
14
+ /**
15
+ * Create a scratch sandbox directory for non-repo tasks.
16
+ *
17
+ * When `PARALLAX_CODING_DIRECTORY` is set (e.g. `~/Projects`), creates a
18
+ * named subdir like `~/Projects/todo-app/` derived from the task label.
19
+ * Otherwise falls back to `~/.eliza/workspaces/{uuid}`.
20
+ */
21
+ export declare function createScratchDir(runtime?: IAgentRuntime, label?: string): string;
22
+ /**
23
+ * Generate a short semantic label from repo URL and/or task description.
24
+ * e.g. "git-workspace-service-testbed/hello-mima" or "scratch/react-research"
25
+ */
26
+ export declare function generateLabel(repo: string | undefined, task: string | undefined): string;
27
+ /**
28
+ * Register lifecycle event handlers for a spawned session.
29
+ *
30
+ * When `coordinatorActive` is true the SwarmCoordinator owns chat messaging
31
+ * and session lifecycle for blocked / task_complete / error events.
32
+ * This listener still handles scratch-dir cleanup regardless.
33
+ */
34
+ export declare function registerSessionEvents(ptyService: PTYService, runtime: IAgentRuntime, sessionId: string, label: string, scratchDir: string | null, callback?: HandlerCallback, coordinatorActive?: boolean, skillSessionAllowList?: SkillSessionAllowList): void;
35
+ //# sourceMappingURL=coding-task-helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coding-task-helpers.d.ts","sourceRoot":"","sources":["../../src/actions/coding-task-helpers.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAMH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,KAAK,eAAe,EAAU,MAAM,eAAe,CAAC;AAE7D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAC7D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAgClF;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,OAAO,CAAC,EAAE,aAAa,EACvB,KAAK,CAAC,EAAE,MAAM,GACb,MAAM,CA4BR;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,IAAI,EAAE,MAAM,GAAG,SAAS,GACvB,MAAM,CA4BR;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,MAAM,EACb,UAAU,EAAE,MAAM,GAAG,IAAI,EACzB,QAAQ,CAAC,EAAE,eAAe,EAC1B,iBAAiB,UAAQ,EACzB,qBAAqB,CAAC,EAAE,qBAAqB,GAC5C,IAAI,CAuEN"}
@@ -0,0 +1,11 @@
1
+ import type { Memory } from "@elizaos/core";
2
+ export declare function extractEvalRunMetadata(value: Memory | Record<string, unknown> | null | undefined): {
3
+ scenarioId?: string;
4
+ batchId?: string;
5
+ };
6
+ export declare function mergeTaskThreadEvalMetadata(message: Memory | null | undefined, metadata: Record<string, unknown> | undefined): {
7
+ scenarioId?: string;
8
+ batchId?: string;
9
+ metadata: Record<string, unknown>;
10
+ };
11
+ //# sourceMappingURL=eval-metadata.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"eval-metadata.d.ts","sourceRoot":"","sources":["../../src/actions/eval-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAsB5C,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,GAAG,SAAS,GACzD;IACD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CA0BA;AAED,wBAAgB,2BAA2B,CACzC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAClC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,GAC5C;IACD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC,CAkBA"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * FINALIZE_WORKSPACE action - Commit, push, and create PR for workspace changes
3
+ *
4
+ * Completes a coding task by committing changes, pushing to remote,
5
+ * and optionally creating a pull request.
6
+ *
7
+ * @module actions/finalize-workspace
8
+ */
9
+ import type { Action } from "@elizaos/core";
10
+ export declare const finalizeWorkspaceAction: Action;
11
+ //# sourceMappingURL=finalize-workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"finalize-workspace.d.ts","sourceRoot":"","sources":["../../src/actions/finalize-workspace.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAIvB,eAAO,MAAM,uBAAuB,EAAE,MA4PrC,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * LIST_AGENTS action - List active task-agent sessions and task progress.
3
+ *
4
+ * Returns information about running PTY sessions together with the current
5
+ * coordinator task state so the main agent can keep the user updated while
6
+ * background work continues.
7
+ *
8
+ * @module actions/list-agents
9
+ */
10
+ import type { Action } from "@elizaos/core";
11
+ export declare const listAgentsAction: Action;
12
+ export declare const listTaskAgentsAction: Action;
13
+ //# sourceMappingURL=list-agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-agents.d.ts","sourceRoot":"","sources":["../../src/actions/list-agents.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAiCvB,eAAO,MAAM,gBAAgB,EAAE,MAsM9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,QAAmB,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * MANAGE_ISSUES action - Create, list, update, and close GitHub issues
3
+ *
4
+ * Provides full issue lifecycle management through the CodingWorkspaceService.
5
+ * Supports creating issues, listing issues, adding comments, closing, and reopening.
6
+ *
7
+ * @module actions/manage-issues
8
+ */
9
+ import type { Action } from "@elizaos/core";
10
+ export declare const manageIssuesAction: Action;
11
+ //# sourceMappingURL=manage-issues.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"manage-issues.d.ts","sourceRoot":"","sources":["../../src/actions/manage-issues.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAmBvB,eAAO,MAAM,kBAAkB,EAAE,MA+MhC,CAAC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * PROVISION_WORKSPACE action - Create a git workspace for coding tasks
3
+ *
4
+ * Clones a repository or creates a worktree for isolated development.
5
+ * Useful for setting up a clean environment before spawning a coding agent.
6
+ *
7
+ * @module actions/provision-workspace
8
+ */
9
+ import type { Action } from "@elizaos/core";
10
+ export declare const provisionWorkspaceAction: Action;
11
+ //# sourceMappingURL=provision-workspace.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"provision-workspace.d.ts","sourceRoot":"","sources":["../../src/actions/provision-workspace.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAOvB,eAAO,MAAM,wBAAwB,EAAE,MA4NtC,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * SEND_TO_AGENT action - Send input to a running task agent.
3
+ *
4
+ * Allows sending text or commands to an active PTY session.
5
+ * Useful for responding to prompts, providing feedback, or giving new instructions.
6
+ *
7
+ * @module actions/send-to-agent
8
+ */
9
+ import type { Action } from "@elizaos/core";
10
+ export declare const sendToAgentAction: Action;
11
+ export declare const sendToTaskAgentAction: Action;
12
+ //# sourceMappingURL=send-to-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send-to-agent.d.ts","sourceRoot":"","sources":["../../src/actions/send-to-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAMvB,eAAO,MAAM,iBAAiB,EAAE,MAgS/B,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAAoB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * SPAWN_AGENT action - Spawns a CLI task agent.
3
+ *
4
+ * Creates a new PTY session for a task agent (Claude Code, Codex, etc.)
5
+ * and returns a session ID for subsequent interactions.
6
+ *
7
+ * @module actions/spawn-agent
8
+ */
9
+ import { type Action } from "@elizaos/core";
10
+ export declare const spawnAgentAction: Action;
11
+ export declare const spawnTaskAgentAction: Action;
12
+ //# sourceMappingURL=spawn-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spawn-agent.d.ts","sourceRoot":"","sources":["../../src/actions/spawn-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,EACL,KAAK,MAAM,EAQZ,MAAM,eAAe,CAAC;AAgGvB,eAAO,MAAM,gBAAgB,EAAE,MA4nB9B,CAAC;AAEF,eAAO,MAAM,oBAAoB,QAAmB,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * CREATE_TASK action to set up and launch task agents.
3
+ *
4
+ * Combines workspace provisioning and agent spawning into a single atomic action.
5
+ * - If a repo URL is provided, clones it into a fresh workspace
6
+ * - If no repo, creates a scratch sandbox directory
7
+ * - Spawns the specified task agent(s) in that workspace with the given task
8
+ * - Supports multi-agent mode via pipe-delimited `agents` param
9
+ *
10
+ * This eliminates the need for multi-action chaining (PROVISION_WORKSPACE -> SPAWN_AGENT)
11
+ * and ensures agents always run in an isolated directory.
12
+ *
13
+ * @module actions/start-coding-task
14
+ */
15
+ import { type Action } from "@elizaos/core";
16
+ /**
17
+ * Caller-supplied retry policy for the custom validator path. Stored on
18
+ * the task's session metadata under `validator` / `maxRetries` /
19
+ * `onVerificationFail` so the decision loop can read it after completion.
20
+ */
21
+ export type OnVerificationFail = "retry" | "escalate";
22
+ /**
23
+ * When the action-selector LLM trims a multi-clause user prompt down to a
24
+ * single imperative `task`, the rest of the user text is dropped — e.g.
25
+ * "read /etc/timezone, then also tell me X" gets reduced to "read
26
+ * /etc/timezone" and the secondary clause never reaches the subagent.
27
+ * Reconstruct a brief that preserves the full user intent while still
28
+ * letting the planner-extracted task lead.
29
+ *
30
+ * Returns `extractedTask` unchanged when:
31
+ * - userText is empty (programmatic spawn, no user message)
32
+ * - userText is shorter or equal to extractedTask (the planner just
33
+ * cleaned up casing/grammar — no information is lost)
34
+ * - extractedTask is a substring of userText (the "extraction" was a
35
+ * noop and userText alone carries everything)
36
+ *
37
+ * Otherwise returns a two-section brief: the planner-extracted task as the
38
+ * imperative header, and the full user message preserved for context the
39
+ * planner trimmed.
40
+ */
41
+ export declare function preserveUserPromptInTask(extractedTask: string, userText: string): string;
42
+ /**
43
+ * Split a multi-intent task description into one segment per distinct ask.
44
+ * Matches numbered lists (`1. ...`, `2) ...`) and bullets (`- ...`, `* ...`).
45
+ * Returns the original text as a single-element array when no multi-intent
46
+ * structure is detected, so the call site can always pipe-join unconditionally.
47
+ *
48
+ * Rationale: the action-selector LLM consistently puts multi-ask user prompts
49
+ * into the `task` field instead of `agents`. The result is a subagent that
50
+ * cherry-picks one item and silently drops the rest. Auto-splitting here
51
+ * guarantees every distinct ask gets its own subagent regardless of which
52
+ * field the LLM populated.
53
+ */
54
+ export declare function splitMultiIntentTask(text: string): string[];
55
+ /**
56
+ * Reject a shell/pi/bash agentType hint when the task text is prose, so both
57
+ * CREATE_TASK and SPAWN_AGENT upgrade to a reasoning framework via
58
+ * `resolveAgentType`. Returns the sanitized hint (original value or `undefined`
59
+ * if it was rejected). `callerTag` is the [PREFIX] string used when warning
60
+ * so the log line points at the actual callsite.
61
+ */
62
+ export declare function coerceShellAgentTypeForProse(explicitRawType: string | undefined, taskText: string | undefined | null, callerTag: string): string | undefined;
63
+ type BackgroundAction = Action & {
64
+ suppressPostActionContinuation?: boolean;
65
+ };
66
+ export declare const startCodingTaskAction: BackgroundAction;
67
+ export declare const createTaskAction: BackgroundAction;
68
+ export {};
69
+ //# sourceMappingURL=start-coding-task.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"start-coding-task.d.ts","sourceRoot":"","sources":["../../src/actions/start-coding-task.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EACL,KAAK,MAAM,EAQZ,MAAM,eAAe,CAAC;AAoBvB;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,GAAG,UAAU,CAAC;AAkItD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,wBAAwB,CACtC,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,GACf,MAAM,CAOR;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAyB3D;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,eAAe,EAAE,MAAM,GAAG,SAAS,EACnC,QAAQ,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,EACnC,SAAS,EAAE,MAAM,GAChB,MAAM,GAAG,SAAS,CAYpB;AAED,KAAK,gBAAgB,GAAG,MAAM,GAAG;IAC/B,8BAA8B,CAAC,EAAE,OAAO,CAAC;CAC1C,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,gBA4enC,CAAC;AAEF,eAAO,MAAM,gBAAgB,kBAAwB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * STOP_AGENT action - Stop a running task-agent session.
3
+ *
4
+ * Terminates an active PTY session. Use when the agent is done,
5
+ * stuck, or needs to be cancelled.
6
+ *
7
+ * @module actions/stop-agent
8
+ */
9
+ import { type Action } from "@elizaos/core";
10
+ export declare const stopAgentAction: Action;
11
+ export declare const stopTaskAgentAction: Action;
12
+ //# sourceMappingURL=stop-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stop-agent.d.ts","sourceRoot":"","sources":["../../src/actions/stop-agent.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,KAAK,MAAM,EAQZ,MAAM,eAAe,CAAC;AAIvB,eAAO,MAAM,eAAe,EAAE,MA2N7B,CAAC;AAEF,eAAO,MAAM,mBAAmB,QAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Action } from "@elizaos/core";
2
+ export declare const taskControlAction: Action;
3
+ //# sourceMappingURL=task-control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-control.d.ts","sourceRoot":"","sources":["../../src/actions/task-control.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AA6CvB,eAAO,MAAM,iBAAiB,EAAE,MAmN/B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Action } from "@elizaos/core";
2
+ export declare const taskHistoryAction: Action;
3
+ //# sourceMappingURL=task-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-history.d.ts","sourceRoot":"","sources":["../../src/actions/task-history.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAMP,MAAM,eAAe,CAAC;AAkLvB,eAAO,MAAM,iBAAiB,EAAE,MA6N/B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { Action } from "@elizaos/core";
2
+ export declare const taskShareAction: Action;
3
+ //# sourceMappingURL=task-share.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-share.d.ts","sourceRoot":"","sources":["../../src/actions/task-share.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,MAAM,EAOP,MAAM,eAAe,CAAC;AAYvB,eAAO,MAAM,eAAe,EAAE,MAmL7B,CAAC"}