@action-llama/action-llama 0.13.6 → 0.14.1
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/agent-docs/AGENTS.md +123 -207
- package/dist/agents/container-entry.d.ts +1 -3
- package/dist/agents/container-entry.d.ts.map +1 -1
- package/dist/agents/container-entry.js +208 -154
- package/dist/agents/container-entry.js.map +1 -1
- package/dist/agents/container-runner.d.ts.map +1 -1
- package/dist/agents/container-runner.js +19 -8
- package/dist/agents/container-runner.js.map +1 -1
- package/dist/agents/context-injection.d.ts +7 -0
- package/dist/agents/context-injection.d.ts.map +1 -0
- package/dist/agents/context-injection.js +27 -0
- package/dist/agents/context-injection.js.map +1 -0
- package/dist/agents/execution-engine.d.ts.map +1 -1
- package/dist/agents/execution-engine.js +99 -109
- package/dist/agents/execution-engine.js.map +1 -1
- package/dist/agents/model-fallback.d.ts +18 -0
- package/dist/agents/model-fallback.d.ts.map +1 -0
- package/dist/agents/model-fallback.js +40 -0
- package/dist/agents/model-fallback.js.map +1 -0
- package/dist/agents/prompt.d.ts +9 -2
- package/dist/agents/prompt.d.ts.map +1 -1
- package/dist/agents/prompt.js +21 -49
- package/dist/agents/prompt.js.map +1 -1
- package/dist/agents/runner.d.ts +2 -0
- package/dist/agents/runner.d.ts.map +1 -1
- package/dist/agents/runner.js +142 -124
- package/dist/agents/runner.js.map +1 -1
- package/dist/agents/session-factory.d.ts +13 -0
- package/dist/agents/session-factory.d.ts.map +1 -0
- package/dist/agents/session-factory.js +27 -0
- package/dist/agents/session-factory.js.map +1 -0
- package/dist/build-info.json +1 -1
- package/dist/cli/commands/agent.d.ts.map +1 -1
- package/dist/cli/commands/agent.js +43 -23
- package/dist/cli/commands/agent.js.map +1 -1
- package/dist/cli/commands/chat.d.ts.map +1 -1
- package/dist/cli/commands/chat.js +26 -43
- package/dist/cli/commands/chat.js.map +1 -1
- package/dist/cli/commands/claude.d.ts +4 -0
- package/dist/cli/commands/claude.d.ts.map +1 -0
- package/dist/cli/commands/claude.js +8 -0
- package/dist/cli/commands/claude.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +24 -6
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/mcp.d.ts +8 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +31 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/new.d.ts.map +1 -1
- package/dist/cli/commands/new.js +15 -6
- package/dist/cli/commands/new.js.map +1 -1
- package/dist/cli/commands/run.js +1 -1
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/start.js +2 -2
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/stats.d.ts +9 -0
- package/dist/cli/commands/stats.d.ts.map +1 -0
- package/dist/cli/commands/stats.js +149 -0
- package/dist/cli/commands/stats.js.map +1 -0
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +3 -0
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/cli/main.js +50 -3
- package/dist/cli/main.js.map +1 -1
- package/dist/gateway/index.d.ts +3 -0
- package/dist/gateway/index.d.ts.map +1 -1
- package/dist/gateway/index.js +7 -1
- package/dist/gateway/index.js.map +1 -1
- package/dist/gateway/lock-store.d.ts +10 -0
- package/dist/gateway/lock-store.d.ts.map +1 -1
- package/dist/gateway/lock-store.js +38 -0
- package/dist/gateway/lock-store.js.map +1 -1
- package/dist/gateway/routes/dashboard.d.ts +2 -1
- package/dist/gateway/routes/dashboard.d.ts.map +1 -1
- package/dist/gateway/routes/dashboard.js +26 -6
- package/dist/gateway/routes/dashboard.js.map +1 -1
- package/dist/gateway/routes/locks.d.ts.map +1 -1
- package/dist/gateway/routes/locks.js +39 -0
- package/dist/gateway/routes/locks.js.map +1 -1
- package/dist/gateway/routes/logs.d.ts.map +1 -1
- package/dist/gateway/routes/logs.js +4 -5
- package/dist/gateway/routes/logs.js.map +1 -1
- package/dist/gateway/routes/stats.d.ts +4 -0
- package/dist/gateway/routes/stats.d.ts.map +1 -0
- package/dist/gateway/routes/stats.js +25 -0
- package/dist/gateway/routes/stats.js.map +1 -0
- package/dist/gateway/views/agent-detail-page.d.ts +12 -0
- package/dist/gateway/views/agent-detail-page.d.ts.map +1 -0
- package/dist/gateway/views/agent-detail-page.js +303 -0
- package/dist/gateway/views/agent-detail-page.js.map +1 -0
- package/dist/gateway/views/dashboard-page.d.ts.map +1 -1
- package/dist/gateway/views/dashboard-page.js +179 -245
- package/dist/gateway/views/dashboard-page.js.map +1 -1
- package/dist/gateway/views/instance-detail-page.d.ts +24 -0
- package/dist/gateway/views/instance-detail-page.d.ts.map +1 -0
- package/dist/gateway/views/instance-detail-page.js +277 -0
- package/dist/gateway/views/instance-detail-page.js.map +1 -0
- package/dist/gateway/views/layout.d.ts +17 -0
- package/dist/gateway/views/layout.d.ts.map +1 -0
- package/dist/gateway/views/layout.js +153 -0
- package/dist/gateway/views/layout.js.map +1 -0
- package/dist/gateway/views/login-page.d.ts.map +1 -1
- package/dist/gateway/views/login-page.js +24 -37
- package/dist/gateway/views/login-page.js.map +1 -1
- package/dist/hooks/runner.d.ts +12 -0
- package/dist/hooks/runner.d.ts.map +1 -0
- package/dist/hooks/runner.js +32 -0
- package/dist/hooks/runner.js.map +1 -0
- package/dist/mcp/server.d.ts +5 -0
- package/dist/mcp/server.d.ts.map +1 -0
- package/dist/mcp/server.js +336 -0
- package/dist/mcp/server.js.map +1 -0
- package/dist/remote/push.d.ts.map +1 -1
- package/dist/remote/push.js +6 -1
- package/dist/remote/push.js.map +1 -1
- package/dist/scheduler/call-dispatcher.d.ts +2 -2
- package/dist/scheduler/call-dispatcher.js +3 -3
- package/dist/scheduler/call-dispatcher.js.map +1 -1
- package/dist/scheduler/execution.d.ts +5 -2
- package/dist/scheduler/execution.d.ts.map +1 -1
- package/dist/scheduler/execution.js +75 -4
- package/dist/scheduler/execution.js.map +1 -1
- package/dist/scheduler/gateway-setup.d.ts +2 -0
- package/dist/scheduler/gateway-setup.d.ts.map +1 -1
- package/dist/scheduler/gateway-setup.js +3 -2
- package/dist/scheduler/gateway-setup.js.map +1 -1
- package/dist/scheduler/image-builder.js +3 -3
- package/dist/scheduler/image-builder.js.map +1 -1
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +16 -3
- package/dist/scheduler/index.js.map +1 -1
- package/dist/scheduler/shutdown.d.ts +2 -0
- package/dist/scheduler/shutdown.d.ts.map +1 -1
- package/dist/scheduler/shutdown.js +4 -1
- package/dist/scheduler/shutdown.js.map +1 -1
- package/dist/scheduler/validation.d.ts.map +1 -1
- package/dist/scheduler/validation.js +5 -3
- package/dist/scheduler/validation.js.map +1 -1
- package/dist/scheduler/watcher.d.ts +1 -1
- package/dist/scheduler/watcher.js +1 -1
- package/dist/scheduler/webhook-setup.d.ts +2 -0
- package/dist/scheduler/webhook-setup.d.ts.map +1 -1
- package/dist/scheduler/webhook-setup.js +2 -0
- package/dist/scheduler/webhook-setup.js.map +1 -1
- package/dist/setup/prompts.d.ts.map +1 -1
- package/dist/setup/prompts.js +35 -6
- package/dist/setup/prompts.js.map +1 -1
- package/dist/setup/scaffold.d.ts +6 -0
- package/dist/setup/scaffold.d.ts.map +1 -1
- package/dist/setup/scaffold.js +185 -7
- package/dist/setup/scaffold.js.map +1 -1
- package/dist/shared/config.d.ts +16 -5
- package/dist/shared/config.d.ts.map +1 -1
- package/dist/shared/config.js +75 -18
- package/dist/shared/config.js.map +1 -1
- package/dist/shared/credential-refs.d.ts.map +1 -1
- package/dist/shared/credential-refs.js +9 -5
- package/dist/shared/credential-refs.js.map +1 -1
- package/dist/shared/environment.d.ts +0 -1
- package/dist/shared/environment.d.ts.map +1 -1
- package/dist/shared/environment.js +19 -3
- package/dist/shared/environment.js.map +1 -1
- package/dist/shared/frontmatter.d.ts +11 -0
- package/dist/shared/frontmatter.d.ts.map +1 -0
- package/dist/shared/frontmatter.js +30 -0
- package/dist/shared/frontmatter.js.map +1 -0
- package/dist/shared/paths.d.ts +1 -0
- package/dist/shared/paths.d.ts.map +1 -1
- package/dist/shared/paths.js +3 -0
- package/dist/shared/paths.js.map +1 -1
- package/dist/stats/index.d.ts +3 -0
- package/dist/stats/index.d.ts.map +1 -0
- package/dist/stats/index.js +2 -0
- package/dist/stats/index.js.map +1 -0
- package/dist/stats/store.d.ts +89 -0
- package/dist/stats/store.d.ts.map +1 -0
- package/dist/stats/store.js +242 -0
- package/dist/stats/store.js.map +1 -0
- package/dist/tui/status-tracker.d.ts +6 -1
- package/dist/tui/status-tracker.d.ts.map +1 -1
- package/dist/tui/status-tracker.js +11 -1
- package/dist/tui/status-tracker.js.map +1 -1
- package/docker/bin/{al-call → al-subagent} +2 -2
- package/docker/bin/{al-check → al-subagent-check} +2 -2
- package/docker/bin/{al-wait → al-subagent-wait} +2 -2
- package/package.json +8 -21
- package/LICENSE +0 -21
- package/README.md +0 -192
- package/dist/gateway/views/logs-page.d.ts +0 -2
- package/dist/gateway/views/logs-page.d.ts.map +0 -1
- package/dist/gateway/views/logs-page.js +0 -280
- package/dist/gateway/views/logs-page.js.map +0 -1
- package/dist/preflight/interpolate.d.ts +0 -10
- package/dist/preflight/interpolate.d.ts.map +0 -1
- package/dist/preflight/interpolate.js +0 -33
- package/dist/preflight/interpolate.js.map +0 -1
- package/dist/preflight/providers/git-clone.d.ts +0 -3
- package/dist/preflight/providers/git-clone.d.ts.map +0 -1
- package/dist/preflight/providers/git-clone.js +0 -36
- package/dist/preflight/providers/git-clone.js.map +0 -1
- package/dist/preflight/providers/http.d.ts +0 -3
- package/dist/preflight/providers/http.d.ts.map +0 -1
- package/dist/preflight/providers/http.js +0 -36
- package/dist/preflight/providers/http.js.map +0 -1
- package/dist/preflight/providers/shell.d.ts +0 -3
- package/dist/preflight/providers/shell.d.ts.map +0 -1
- package/dist/preflight/providers/shell.js +0 -28
- package/dist/preflight/providers/shell.js.map +0 -1
- package/dist/preflight/registry.d.ts +0 -4
- package/dist/preflight/registry.d.ts.map +0 -1
- package/dist/preflight/registry.js +0 -20
- package/dist/preflight/registry.js.map +0 -1
- package/dist/preflight/runner.d.ts +0 -7
- package/dist/preflight/runner.d.ts.map +0 -1
- package/dist/preflight/runner.js +0 -28
- package/dist/preflight/runner.js.map +0 -1
- package/dist/preflight/schema.d.ts +0 -21
- package/dist/preflight/schema.d.ts.map +0 -1
- package/dist/preflight/schema.js +0 -9
- package/dist/preflight/schema.js.map +0 -1
package/dist/setup/prompts.js
CHANGED
|
@@ -3,6 +3,31 @@ import { validateGitHubToken } from "./validators.js";
|
|
|
3
3
|
import { writeCredentialFields } from "../shared/credentials.js";
|
|
4
4
|
import { resolveCredential } from "../credentials/registry.js";
|
|
5
5
|
import { promptCredential } from "../credentials/prompter.js";
|
|
6
|
+
/**
|
|
7
|
+
* Derive a short model name from a full model ID.
|
|
8
|
+
* e.g. "claude-sonnet-4-20250514" → "sonnet", "gpt-4o" → "gpt4o"
|
|
9
|
+
*/
|
|
10
|
+
function deriveModelName(modelId) {
|
|
11
|
+
// Well-known patterns
|
|
12
|
+
if (modelId.includes("sonnet"))
|
|
13
|
+
return "sonnet";
|
|
14
|
+
if (modelId.includes("opus"))
|
|
15
|
+
return "opus";
|
|
16
|
+
if (modelId.includes("haiku"))
|
|
17
|
+
return "haiku";
|
|
18
|
+
if (modelId.includes("gpt-4o-mini"))
|
|
19
|
+
return "gpt4o-mini";
|
|
20
|
+
if (modelId.includes("gpt-4o"))
|
|
21
|
+
return "gpt4o";
|
|
22
|
+
if (modelId.includes("gpt-4"))
|
|
23
|
+
return "gpt4";
|
|
24
|
+
if (modelId.includes("gpt-3"))
|
|
25
|
+
return "gpt3";
|
|
26
|
+
if (modelId.includes("o1"))
|
|
27
|
+
return "o1";
|
|
28
|
+
// Fallback: strip version suffixes and special chars
|
|
29
|
+
return modelId.replace(/[-_.]\d{4,}.*$/, "").replace(/[^a-z0-9]/g, "-").replace(/-+/g, "-").replace(/^-|-$/g, "") || "default";
|
|
30
|
+
}
|
|
6
31
|
/**
|
|
7
32
|
* Write credential values to disk using the directory-based layout.
|
|
8
33
|
*/
|
|
@@ -136,13 +161,17 @@ export async function runSetup() {
|
|
|
136
161
|
}
|
|
137
162
|
}
|
|
138
163
|
}
|
|
139
|
-
//
|
|
164
|
+
// Derive a short name from the model ID (e.g. "claude-sonnet-4-20250514" → "sonnet")
|
|
165
|
+
const derivedName = deriveModelName(modelName);
|
|
166
|
+
// Build global config with named models
|
|
140
167
|
const globalConfig = {
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
168
|
+
models: {
|
|
169
|
+
[derivedName]: {
|
|
170
|
+
provider,
|
|
171
|
+
model: modelName,
|
|
172
|
+
...(thinkingLevel ? { thinkingLevel } : {}),
|
|
173
|
+
authType: "api_key",
|
|
174
|
+
},
|
|
146
175
|
},
|
|
147
176
|
};
|
|
148
177
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/setup/prompts.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/setup/prompts.ts"],"names":[],"mappings":"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"}
|
package/dist/setup/scaffold.d.ts
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
export declare const CLAUDE_COMMANDS: Record<string, string>;
|
|
2
|
+
/**
|
|
3
|
+
* Scaffold Claude Code slash commands into .claude/commands/.
|
|
4
|
+
* Skips files that already exist to avoid overwriting user customizations.
|
|
5
|
+
*/
|
|
6
|
+
export declare function scaffoldClaudeCommands(projectPath: string): void;
|
|
1
7
|
import type { GlobalConfig, AgentConfig } from "../shared/config.js";
|
|
2
8
|
import { writeCredentialField, writeCredentialFields } from "../shared/credentials.js";
|
|
3
9
|
export { writeCredentialField, writeCredentialFields };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scaffold.d.ts","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAmIlD,CAAC;AAEF;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI,CAShE;AAID,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGvF,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;AAEvD;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAG3C;AAWD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,WAAW,CAAC;CACrB;AAED,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,GAAG,IAAI,CAyB7E;AAED,wBAAgB,eAAe,CAC7B,WAAW,EAAE,MAAM,EACnB,YAAY,EAAE,YAAY,EAC1B,MAAM,GAAE,aAAa,EAAO,EAC5B,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CAwHN"}
|
package/dist/setup/scaffold.js
CHANGED
|
@@ -1,7 +1,153 @@
|
|
|
1
1
|
import { mkdirSync, writeFileSync, existsSync, copyFileSync, symlinkSync, lstatSync, realpathSync } from "fs";
|
|
2
2
|
import { resolve, relative } from "path";
|
|
3
|
+
// ---------------------------------------------------------------------------
|
|
4
|
+
// Claude Code slash-command templates (.claude/commands/*.md)
|
|
5
|
+
// ---------------------------------------------------------------------------
|
|
6
|
+
export const CLAUDE_COMMANDS = {
|
|
7
|
+
"new-agent": `# Create a new agent
|
|
8
|
+
|
|
9
|
+
Create a new Action Llama agent named \`$ARGUMENTS\`.
|
|
10
|
+
|
|
11
|
+
## Steps
|
|
12
|
+
|
|
13
|
+
1. Ask the user for:
|
|
14
|
+
- **Trigger type**: \`schedule\` (cron), \`webhook\`, or both
|
|
15
|
+
- If schedule: a cron expression (e.g. \`*/5 * * * *\`)
|
|
16
|
+
- If webhook: the provider and event (e.g. \`github\` / \`issues.opened\`)
|
|
17
|
+
- **Credentials** needed (e.g. \`github_token\`, \`slack_webhook\`)
|
|
18
|
+
- A one-sentence description of what the agent should do
|
|
19
|
+
|
|
20
|
+
2. Use \`al_agents\` to list existing agents and avoid name conflicts.
|
|
21
|
+
|
|
22
|
+
3. Create \`agents/$ARGUMENTS/SKILL.md\` with:
|
|
23
|
+
- YAML frontmatter containing the trigger config and credentials
|
|
24
|
+
- Do NOT include \`name\` or \`model\` in the frontmatter — name is derived from the directory, model is inherited from project config
|
|
25
|
+
- A markdown body with clear instructions for the agent
|
|
26
|
+
- Reference AGENTS.md (symlinked at project root) for the full SKILL.md specification
|
|
27
|
+
|
|
28
|
+
4. Confirm the agent was created and suggest next steps:
|
|
29
|
+
- \`al doctor\` to verify credentials
|
|
30
|
+
- \`/run\` to test it
|
|
31
|
+
`,
|
|
32
|
+
"run": `# Run an agent
|
|
33
|
+
|
|
34
|
+
Trigger an agent run and report the results.
|
|
35
|
+
|
|
36
|
+
## Steps
|
|
37
|
+
|
|
38
|
+
1. Call \`al_status\` to check if the scheduler is running.
|
|
39
|
+
- If not running, call \`al_start\` to start it and wait for it to become ready.
|
|
40
|
+
|
|
41
|
+
2. Ask the user which agent to run (or use \`$ARGUMENTS\` if provided).
|
|
42
|
+
- If unclear, call \`al_agents\` to list available agents.
|
|
43
|
+
|
|
44
|
+
3. Call \`al_run\` with the agent name.
|
|
45
|
+
|
|
46
|
+
4. Wait a few seconds, then call \`al_logs\` with the agent name, \`lines: 200\`, to fetch the run output.
|
|
47
|
+
- If the run is still in progress, wait and poll logs again.
|
|
48
|
+
|
|
49
|
+
5. Summarize the result:
|
|
50
|
+
- What the agent did (key actions, commits, API calls)
|
|
51
|
+
- Whether it succeeded or failed
|
|
52
|
+
- Any warnings or errors
|
|
53
|
+
`,
|
|
54
|
+
"debug": `# Debug a failing agent
|
|
55
|
+
|
|
56
|
+
Diagnose why an agent is failing and suggest fixes.
|
|
57
|
+
|
|
58
|
+
## Steps
|
|
59
|
+
|
|
60
|
+
1. Identify the agent to debug (use \`$ARGUMENTS\` if provided, otherwise ask).
|
|
61
|
+
|
|
62
|
+
2. Call \`al_logs\` with the agent name, \`level: "warn"\`, \`lines: 500\` to pull recent warnings and errors.
|
|
63
|
+
|
|
64
|
+
3. Call \`al_agents\` with the agent name to read its full config and SKILL.md body.
|
|
65
|
+
|
|
66
|
+
4. Analyze the logs and agent configuration to identify the root cause. Common issues:
|
|
67
|
+
- Missing or expired credentials
|
|
68
|
+
- Malformed SKILL.md frontmatter
|
|
69
|
+
- Instructions that lead to tool errors
|
|
70
|
+
- Rate limiting or API failures
|
|
71
|
+
- Docker/container issues
|
|
72
|
+
|
|
73
|
+
5. Present a diagnosis with:
|
|
74
|
+
- **Root cause**: What's going wrong and why
|
|
75
|
+
- **Evidence**: Relevant log lines
|
|
76
|
+
- **Fix**: Concrete changes to make (SKILL.md edits, credential updates, config changes)
|
|
77
|
+
|
|
78
|
+
6. Offer to apply the fix directly.
|
|
79
|
+
`,
|
|
80
|
+
"iterate": `# Iterate on an agent
|
|
81
|
+
|
|
82
|
+
Run an agent, analyze its output, and improve its instructions. Repeats up to 3 cycles or until the agent runs cleanly.
|
|
83
|
+
|
|
84
|
+
## Rules
|
|
85
|
+
|
|
86
|
+
- Only modify the markdown body (instructions) of SKILL.md, not the YAML frontmatter, unless you ask the user first.
|
|
87
|
+
- Stop iterating when the agent completes without errors or after 3 cycles.
|
|
88
|
+
|
|
89
|
+
## Steps (per cycle)
|
|
90
|
+
|
|
91
|
+
1. Call \`al_status\` to ensure the scheduler is running. Start it with \`al_start\` if needed.
|
|
92
|
+
|
|
93
|
+
2. Call \`al_run\` with the agent name (use \`$ARGUMENTS\` if provided).
|
|
94
|
+
|
|
95
|
+
3. Wait for the run to complete, then call \`al_logs\` with \`lines: 300\` to get the full output.
|
|
96
|
+
|
|
97
|
+
4. Analyze the result:
|
|
98
|
+
- Did the agent complete its task successfully?
|
|
99
|
+
- Were there errors, unnecessary steps, or suboptimal behavior?
|
|
100
|
+
|
|
101
|
+
5. If improvements are needed:
|
|
102
|
+
- Read the current SKILL.md file
|
|
103
|
+
- Edit the instruction body to address the issues found
|
|
104
|
+
- Explain what you changed and why
|
|
105
|
+
- Start the next cycle
|
|
106
|
+
|
|
107
|
+
6. If the run was clean, report success and summarize what was changed across all cycles.
|
|
108
|
+
`,
|
|
109
|
+
"status": `# Status overview
|
|
110
|
+
|
|
111
|
+
Show a rich overview of the Action Llama project status.
|
|
112
|
+
|
|
113
|
+
## Steps
|
|
114
|
+
|
|
115
|
+
1. Call \`al_status\` and \`al_agents\` in parallel to gather scheduler state and agent details.
|
|
116
|
+
|
|
117
|
+
2. Present a formatted overview:
|
|
118
|
+
|
|
119
|
+
**Scheduler**: running/stopped, uptime, gateway URL
|
|
120
|
+
|
|
121
|
+
**Agents**:
|
|
122
|
+
| Agent | State | Trigger | Last Run | Next Run |
|
|
123
|
+
|-------|-------|---------|----------|----------|
|
|
124
|
+
| ... | ... | ... | ... | ... |
|
|
125
|
+
|
|
126
|
+
Include schedule expressions, webhook configs, and credential status for each agent.
|
|
127
|
+
|
|
128
|
+
3. Add actionable suggestions if relevant:
|
|
129
|
+
- Agents that are paused or erroring
|
|
130
|
+
- Agents that haven't run recently
|
|
131
|
+
- Missing credentials flagged by \`al_agents\`
|
|
132
|
+
`,
|
|
133
|
+
};
|
|
134
|
+
/**
|
|
135
|
+
* Scaffold Claude Code slash commands into .claude/commands/.
|
|
136
|
+
* Skips files that already exist to avoid overwriting user customizations.
|
|
137
|
+
*/
|
|
138
|
+
export function scaffoldClaudeCommands(projectPath) {
|
|
139
|
+
const commandsDir = resolve(projectPath, ".claude", "commands");
|
|
140
|
+
mkdirSync(commandsDir, { recursive: true });
|
|
141
|
+
for (const [name, content] of Object.entries(CLAUDE_COMMANDS)) {
|
|
142
|
+
const filePath = resolve(commandsDir, `${name}.md`);
|
|
143
|
+
if (!existsSync(filePath)) {
|
|
144
|
+
writeFileSync(filePath, content);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
}
|
|
3
148
|
import { fileURLToPath } from "url";
|
|
4
149
|
import { stringify as stringifyTOML } from "smol-toml";
|
|
150
|
+
import { stringify as stringifyYAML } from "yaml";
|
|
5
151
|
import { writeCredentialField, writeCredentialFields } from "../shared/credentials.js";
|
|
6
152
|
import { CONSTANTS } from "../shared/constants.js";
|
|
7
153
|
export { writeCredentialField, writeCredentialFields };
|
|
@@ -29,13 +175,31 @@ function lstatSafe(path) {
|
|
|
29
175
|
export function scaffoldAgent(projectPath, agent) {
|
|
30
176
|
const agentPath = resolve(projectPath, "agents", agent.name);
|
|
31
177
|
mkdirSync(agentPath, { recursive: true });
|
|
32
|
-
//
|
|
33
|
-
const
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
178
|
+
// Write a SKILL.md with YAML frontmatter if none exists
|
|
179
|
+
const skillPath = resolve(agentPath, "SKILL.md");
|
|
180
|
+
if (!existsSync(skillPath)) {
|
|
181
|
+
// Strip `name` before serializing — it's derived from the directory name.
|
|
182
|
+
// Also strip undefined values and models (resolved at load time from global config).
|
|
183
|
+
// Split into platform-allowed top-level fields and AL-specific metadata.
|
|
184
|
+
const { name: _, models: _m, description, license, compatibility, ...alFields } = agent.config;
|
|
185
|
+
const frontmatter = {};
|
|
186
|
+
if (description)
|
|
187
|
+
frontmatter.description = description;
|
|
188
|
+
if (license)
|
|
189
|
+
frontmatter.license = license;
|
|
190
|
+
if (compatibility)
|
|
191
|
+
frontmatter.compatibility = compatibility;
|
|
192
|
+
const metadata = {};
|
|
193
|
+
for (const [k, v] of Object.entries(alFields)) {
|
|
194
|
+
if (v !== undefined)
|
|
195
|
+
metadata[k] = v;
|
|
196
|
+
}
|
|
197
|
+
if (Object.keys(metadata).length > 0)
|
|
198
|
+
frontmatter.metadata = metadata;
|
|
199
|
+
const yamlStr = Object.keys(frontmatter).length > 0
|
|
200
|
+
? stringifyYAML(frontmatter).trimEnd()
|
|
201
|
+
: "";
|
|
202
|
+
writeFileSync(skillPath, `---\n${yamlStr}\n---\n\n# ${agent.name} Agent\n\nCustom agent.\n`);
|
|
39
203
|
}
|
|
40
204
|
}
|
|
41
205
|
export function scaffoldProject(projectPath, globalConfig, agents = [], projectName) {
|
|
@@ -132,5 +296,19 @@ export function scaffoldProject(projectPath, globalConfig, agents = [], projectN
|
|
|
132
296
|
"",
|
|
133
297
|
].join("\n"));
|
|
134
298
|
}
|
|
299
|
+
// Create .mcp.json for Claude Code MCP integration
|
|
300
|
+
const mcpJsonPath = resolve(projectPath, ".mcp.json");
|
|
301
|
+
if (!existsSync(mcpJsonPath)) {
|
|
302
|
+
writeFileSync(mcpJsonPath, JSON.stringify({
|
|
303
|
+
mcpServers: {
|
|
304
|
+
"action-llama": {
|
|
305
|
+
command: "al",
|
|
306
|
+
args: ["mcp", "serve"],
|
|
307
|
+
},
|
|
308
|
+
},
|
|
309
|
+
}, null, 2) + "\n");
|
|
310
|
+
}
|
|
311
|
+
// Scaffold Claude Code slash commands
|
|
312
|
+
scaffoldClaudeCommands(projectPath);
|
|
135
313
|
}
|
|
136
314
|
//# sourceMappingURL=scaffold.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9G,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"scaffold.js","sourceRoot":"","sources":["../../src/setup/scaffold.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.d.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
import type { WebhookTrigger } from "../webhooks/types.js";
|
|
2
|
-
import type { PreflightStep } from "../preflight/schema.js";
|
|
3
2
|
export interface ModelConfig {
|
|
4
3
|
provider: string;
|
|
5
4
|
model: string;
|
|
@@ -30,7 +29,6 @@ export interface VpsConfig {
|
|
|
30
29
|
export type CloudConfig = VpsConfig;
|
|
31
30
|
export interface GatewayConfig {
|
|
32
31
|
port?: number;
|
|
33
|
-
lockTimeout?: number;
|
|
34
32
|
url?: string;
|
|
35
33
|
}
|
|
36
34
|
export interface WebhookSourceConfig {
|
|
@@ -46,7 +44,7 @@ export interface TelemetryConfig {
|
|
|
46
44
|
samplingRate?: number;
|
|
47
45
|
}
|
|
48
46
|
export interface GlobalConfig {
|
|
49
|
-
|
|
47
|
+
models?: Record<string, ModelConfig>;
|
|
50
48
|
local?: LocalConfig;
|
|
51
49
|
gateway?: GatewayConfig;
|
|
52
50
|
webhooks?: Record<string, WebhookSourceConfig>;
|
|
@@ -59,18 +57,26 @@ export interface GlobalConfig {
|
|
|
59
57
|
/** @deprecated Use workQueueSize instead */
|
|
60
58
|
webhookQueueSize?: number;
|
|
61
59
|
workQueueSize?: number;
|
|
60
|
+
resourceLockTimeout?: number;
|
|
62
61
|
scale?: number;
|
|
63
62
|
}
|
|
63
|
+
export interface AgentHooks {
|
|
64
|
+
pre?: string[];
|
|
65
|
+
post?: string[];
|
|
66
|
+
}
|
|
64
67
|
export interface AgentConfig {
|
|
65
68
|
name: string;
|
|
69
|
+
description?: string;
|
|
66
70
|
credentials: string[];
|
|
67
|
-
|
|
71
|
+
models: ModelConfig[];
|
|
68
72
|
schedule?: string;
|
|
69
73
|
webhooks?: WebhookTrigger[];
|
|
70
|
-
|
|
74
|
+
hooks?: AgentHooks;
|
|
71
75
|
params?: Record<string, unknown>;
|
|
72
76
|
scale?: number;
|
|
73
77
|
timeout?: number;
|
|
78
|
+
license?: string;
|
|
79
|
+
compatibility?: string;
|
|
74
80
|
}
|
|
75
81
|
/**
|
|
76
82
|
* Load the raw project config.toml without environment merging.
|
|
@@ -85,6 +91,11 @@ export declare function loadProjectConfig(projectPath: string): GlobalConfig;
|
|
|
85
91
|
*/
|
|
86
92
|
export declare function loadGlobalConfig(projectPath: string, envName?: string): GlobalConfig;
|
|
87
93
|
export declare function loadAgentConfig(projectPath: string, agentName: string): AgentConfig;
|
|
94
|
+
/**
|
|
95
|
+
* Load the SKILL.md body (markdown content after frontmatter).
|
|
96
|
+
* Used by image builder and container entry to get agent instructions.
|
|
97
|
+
*/
|
|
98
|
+
export declare function loadAgentBody(projectPath: string, agentName: string): string;
|
|
88
99
|
export declare function validateAgentName(name: string): void;
|
|
89
100
|
export declare function validateAgentConfig(config: AgentConfig): void;
|
|
90
101
|
export declare function discoverAgents(projectPath: string): string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
package/dist/shared/config.js
CHANGED
|
@@ -3,6 +3,7 @@ import { resolve } from "path";
|
|
|
3
3
|
import { parse as parseTOML } from "smol-toml";
|
|
4
4
|
import { ConfigError } from "./errors.js";
|
|
5
5
|
import { resolveEnvironmentName, loadEnvToml, loadEnvironmentConfig, deepMerge, } from "./environment.js";
|
|
6
|
+
import { parseFrontmatter } from "./frontmatter.js";
|
|
6
7
|
// --- Loaders ---
|
|
7
8
|
/**
|
|
8
9
|
* Load the raw project config.toml without environment merging.
|
|
@@ -13,7 +14,12 @@ export function loadProjectConfig(projectPath) {
|
|
|
13
14
|
let config = {};
|
|
14
15
|
if (existsSync(configPath)) {
|
|
15
16
|
const raw = readFileSync(configPath, "utf-8");
|
|
16
|
-
|
|
17
|
+
try {
|
|
18
|
+
config = parseTOML(raw);
|
|
19
|
+
}
|
|
20
|
+
catch (err) {
|
|
21
|
+
throw new ConfigError(`Error parsing ${configPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
22
|
+
}
|
|
17
23
|
}
|
|
18
24
|
return config;
|
|
19
25
|
}
|
|
@@ -56,29 +62,80 @@ export function loadGlobalConfig(projectPath, envName) {
|
|
|
56
62
|
}
|
|
57
63
|
export function loadAgentConfig(projectPath, agentName) {
|
|
58
64
|
const agentDir = resolve(projectPath, "agents", agentName);
|
|
59
|
-
const
|
|
60
|
-
if (!existsSync(
|
|
61
|
-
throw new ConfigError(`Agent config not found at ${
|
|
62
|
-
}
|
|
63
|
-
const raw = readFileSync(
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
65
|
+
const skillPath = resolve(agentDir, "SKILL.md");
|
|
66
|
+
if (!existsSync(skillPath)) {
|
|
67
|
+
throw new ConfigError(`Agent config not found at ${skillPath}.`);
|
|
68
|
+
}
|
|
69
|
+
const raw = readFileSync(skillPath, "utf-8");
|
|
70
|
+
let data;
|
|
71
|
+
try {
|
|
72
|
+
({ data } = parseFrontmatter(raw));
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
throw new ConfigError(`Error parsing ${skillPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
76
|
+
}
|
|
77
|
+
const meta = (data.metadata ?? {});
|
|
78
|
+
const parsed = {
|
|
79
|
+
name: agentName,
|
|
80
|
+
// Top-level (platform-allowed)
|
|
81
|
+
description: data.description,
|
|
82
|
+
license: data.license,
|
|
83
|
+
compatibility: data.compatibility,
|
|
84
|
+
// From metadata (AL-specific)
|
|
85
|
+
credentials: meta.credentials,
|
|
86
|
+
models: meta.models,
|
|
87
|
+
schedule: meta.schedule,
|
|
88
|
+
webhooks: meta.webhooks,
|
|
89
|
+
hooks: meta.hooks,
|
|
90
|
+
params: meta.params,
|
|
91
|
+
scale: meta.scale,
|
|
92
|
+
timeout: meta.timeout,
|
|
93
|
+
};
|
|
94
|
+
// Resolve named model references from global config
|
|
95
|
+
const rawModels = parsed.models;
|
|
96
|
+
if (!rawModels || !Array.isArray(rawModels) || rawModels.length === 0) {
|
|
97
|
+
throw new ConfigError(`Agent "${agentName}" must have a "models" field listing at least one named model.`);
|
|
98
|
+
}
|
|
99
|
+
const global = loadGlobalConfig(projectPath);
|
|
100
|
+
if (!global.models || Object.keys(global.models).length === 0) {
|
|
101
|
+
throw new ConfigError(`No models defined in config.toml [models]. Define at least one named model.`);
|
|
102
|
+
}
|
|
103
|
+
const resolvedModels = [];
|
|
104
|
+
for (const name of rawModels) {
|
|
105
|
+
const modelDef = global.models[name];
|
|
106
|
+
if (!modelDef) {
|
|
107
|
+
const available = Object.keys(global.models).join(", ");
|
|
108
|
+
throw new ConfigError(`Agent "${agentName}" references model "${name}" which is not defined in config.toml. Available: ${available}`);
|
|
71
109
|
}
|
|
110
|
+
resolvedModels.push(modelDef);
|
|
72
111
|
}
|
|
112
|
+
parsed.models = resolvedModels;
|
|
73
113
|
return parsed;
|
|
74
114
|
}
|
|
75
|
-
|
|
115
|
+
/**
|
|
116
|
+
* Load the SKILL.md body (markdown content after frontmatter).
|
|
117
|
+
* Used by image builder and container entry to get agent instructions.
|
|
118
|
+
*/
|
|
119
|
+
export function loadAgentBody(projectPath, agentName) {
|
|
120
|
+
const skillPath = resolve(projectPath, "agents", agentName, "SKILL.md");
|
|
121
|
+
if (!existsSync(skillPath))
|
|
122
|
+
return "";
|
|
123
|
+
const raw = readFileSync(skillPath, "utf-8");
|
|
124
|
+
try {
|
|
125
|
+
const { body } = parseFrontmatter(raw);
|
|
126
|
+
return body;
|
|
127
|
+
}
|
|
128
|
+
catch (err) {
|
|
129
|
+
throw new ConfigError(`Error parsing ${skillPath}: ${err instanceof Error ? err.message : String(err)}`, { cause: err });
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
const AGENT_NAME_PATTERN = /^[a-z0-9](?:[a-z0-9]|-(?=[a-z0-9]))*$/;
|
|
76
133
|
export function validateAgentName(name) {
|
|
77
|
-
if (!name || name.length >
|
|
78
|
-
throw new ConfigError(`Agent name "${name}" is invalid: must be 1-
|
|
134
|
+
if (!name || name.length > 64) {
|
|
135
|
+
throw new ConfigError(`Agent name "${name}" is invalid: must be 1-64 characters.`);
|
|
79
136
|
}
|
|
80
137
|
if (!AGENT_NAME_PATTERN.test(name)) {
|
|
81
|
-
throw new ConfigError(`Agent name "${name}" is invalid: must contain only lowercase letters, numbers, and hyphens (cannot start or end with a hyphen).`);
|
|
138
|
+
throw new ConfigError(`Agent name "${name}" is invalid: must contain only lowercase letters, numbers, and hyphens (cannot start or end with a hyphen, no consecutive hyphens).`);
|
|
82
139
|
}
|
|
83
140
|
if (name === "default") {
|
|
84
141
|
throw new ConfigError(`Agent name "default" is reserved. Choose a different name.`);
|
|
@@ -109,7 +166,7 @@ export function discoverAgents(projectPath) {
|
|
|
109
166
|
const entryPath = resolve(agentsPath, entry);
|
|
110
167
|
if (!statSync(entryPath).isDirectory())
|
|
111
168
|
continue;
|
|
112
|
-
if (existsSync(resolve(entryPath, "
|
|
169
|
+
if (existsSync(resolve(entryPath, "SKILL.md"))) {
|
|
113
170
|
agents.push(entry);
|
|
114
171
|
}
|
|
115
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/shared/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-refs.d.ts","sourceRoot":"","sources":["../../src/shared/credential-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEjF,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"credential-refs.d.ts","sourceRoot":"","sources":["../../src/shared/credential-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmC,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEjF,+EAA+E;AAC/E,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAKvD,CAAC;AAEF,gFAAgF;AAChF,eAAO,MAAM,wBAAwB,aAEnC,CAAC;AAEH;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAOzE;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,GAAG,GAAG,CAAC,MAAM,CAAC,CA2BlG"}
|
|
@@ -3,10 +3,12 @@ import { discoverAgents, loadAgentConfig } from "./config.js";
|
|
|
3
3
|
export const WEBHOOK_SECRET_TYPES = {
|
|
4
4
|
github: "github_webhook_secret",
|
|
5
5
|
sentry: "sentry_client_secret",
|
|
6
|
+
linear: "linear_webhook_secret",
|
|
7
|
+
mintlify: "mintlify_webhook_secret",
|
|
6
8
|
};
|
|
7
9
|
/** Credentials that are always required but may not be explicitly referenced */
|
|
8
10
|
export const IMPLICIT_CREDENTIAL_REFS = new Set([
|
|
9
|
-
"gateway_api_key
|
|
11
|
+
"gateway_api_key", // Required for gateway authentication
|
|
10
12
|
]);
|
|
11
13
|
/**
|
|
12
14
|
* Convert credential refs to relative file paths within the credentials directory.
|
|
@@ -33,6 +35,12 @@ export function collectCredentialRefs(projectPath, globalConfig) {
|
|
|
33
35
|
for (const ref of config.credentials) {
|
|
34
36
|
credentialRefs.add(ref);
|
|
35
37
|
}
|
|
38
|
+
// Add provider credentials for all models in the chain
|
|
39
|
+
for (const mc of config.models ?? []) {
|
|
40
|
+
if (mc.authType !== "pi_auth") {
|
|
41
|
+
credentialRefs.add(`${mc.provider}_key`);
|
|
42
|
+
}
|
|
43
|
+
}
|
|
36
44
|
for (const trigger of config.webhooks || []) {
|
|
37
45
|
const sourceConfig = webhookSources[trigger.source];
|
|
38
46
|
if (!sourceConfig)
|
|
@@ -43,10 +51,6 @@ export function collectCredentialRefs(projectPath, globalConfig) {
|
|
|
43
51
|
}
|
|
44
52
|
}
|
|
45
53
|
}
|
|
46
|
-
// Add implicit credentials that are always required
|
|
47
|
-
for (const ref of IMPLICIT_CREDENTIAL_REFS) {
|
|
48
|
-
credentialRefs.add(ref);
|
|
49
|
-
}
|
|
50
54
|
return credentialRefs;
|
|
51
55
|
}
|
|
52
56
|
//# sourceMappingURL=credential-refs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credential-refs.js","sourceRoot":"","sources":["../../src/shared/credential-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAqB,MAAM,aAAa,CAAC;AAEjF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,MAAM,EAAE,uBAAuB;IAC/B,MAAM,EAAE,sBAAsB;
|
|
1
|
+
{"version":3,"file":"credential-refs.js","sourceRoot":"","sources":["../../src/shared/credential-refs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAqB,MAAM,aAAa,CAAC;AAEjF,+EAA+E;AAC/E,MAAM,CAAC,MAAM,oBAAoB,GAA2B;IAC1D,MAAM,EAAE,uBAAuB;IAC/B,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,uBAAuB;IAC/B,QAAQ,EAAE,yBAAyB;CACpC,CAAC;AAEF,gFAAgF;AAChF,MAAM,CAAC,MAAM,wBAAwB,GAAG,IAAI,GAAG,CAAC;IAC9C,iBAAiB,EAAG,sCAAsC;CAC3D,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,UAAU,6BAA6B,CAAC,IAAiB;IAC7D,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACxC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,WAAmB,EAAE,YAA0B;IACnF,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACzC,MAAM,MAAM,GAAG,cAAc,CAAC,WAAW,CAAC,CAAC;IAC3C,MAAM,cAAc,GAAG,YAAY,CAAC,QAAQ,IAAI,EAAE,CAAC;IAEnD,KAAK,MAAM,IAAI,IAAI,MAAM,EAAE,CAAC;QAC1B,MAAM,MAAM,GAAG,eAAe,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAClD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;YACrC,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC1B,CAAC;QACD,uDAAuD;QACvD,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,EAAE,CAAC;YACrC,IAAI,EAAE,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAC9B,cAAc,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,QAAQ,MAAM,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QACD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;YAC5C,MAAM,YAAY,GAAG,cAAc,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YACpD,IAAI,CAAC,YAAY;gBAAE,SAAS;YAC5B,MAAM,QAAQ,GAAG,oBAAoB,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YACzD,IAAI,QAAQ,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC;gBACxC,cAAc,CAAC,GAAG,CAAC,GAAG,QAAQ,IAAI,YAAY,CAAC,UAAU,EAAE,CAAC,CAAC;YAC/D,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,cAAc,CAAC;AACxB,CAAC"}
|