@action-llama/action-llama 0.13.0 → 0.13.2

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 (161) hide show
  1. package/README.md +4 -17
  2. package/{docs/agent-reference → agent-docs}/AGENTS.md +27 -0
  3. package/{docs/agent-reference → agent-docs}/skills/README.md +1 -0
  4. package/agent-docs/skills/calls.md +82 -0
  5. package/{docs/agent-reference → agent-docs}/skills/resource-locks.md +13 -7
  6. package/{docs/agent-reference → agent-docs}/skills/signals.md +1 -1
  7. package/dist/agents/container-entry.d.ts.map +1 -1
  8. package/dist/agents/container-entry.js +15 -0
  9. package/dist/agents/container-entry.js.map +1 -1
  10. package/dist/agents/prompt.d.ts.map +1 -1
  11. package/dist/agents/prompt.js +3 -2
  12. package/dist/agents/prompt.js.map +1 -1
  13. package/dist/build-info.json +1 -1
  14. package/dist/cli/commands/doctor.d.ts.map +1 -1
  15. package/dist/cli/commands/doctor.js +15 -0
  16. package/dist/cli/commands/doctor.js.map +1 -1
  17. package/dist/cli/commands/env.d.ts.map +1 -1
  18. package/dist/cli/commands/env.js +4 -0
  19. package/dist/cli/commands/env.js.map +1 -1
  20. package/dist/cli/commands/kill.js +2 -2
  21. package/dist/cli/commands/kill.js.map +1 -1
  22. package/dist/cli/commands/pause.js +2 -2
  23. package/dist/cli/commands/pause.js.map +1 -1
  24. package/dist/cli/commands/push.js +1 -1
  25. package/dist/cli/commands/push.js.map +1 -1
  26. package/dist/cli/commands/resume.js +2 -2
  27. package/dist/cli/commands/resume.js.map +1 -1
  28. package/dist/cli/commands/run.js +2 -2
  29. package/dist/cli/commands/run.js.map +1 -1
  30. package/dist/cli/commands/status.js +5 -5
  31. package/dist/cli/commands/status.js.map +1 -1
  32. package/dist/cli/commands/stop.js +2 -2
  33. package/dist/cli/commands/stop.js.map +1 -1
  34. package/dist/cli/gateway-client.d.ts +6 -0
  35. package/dist/cli/gateway-client.d.ts.map +1 -1
  36. package/dist/cli/gateway-client.js +19 -0
  37. package/dist/cli/gateway-client.js.map +1 -1
  38. package/dist/cloud/vps/constants.d.ts +1 -1
  39. package/dist/cloud/vps/constants.d.ts.map +1 -1
  40. package/dist/cloud/vps/constants.js +9 -0
  41. package/dist/cloud/vps/constants.js.map +1 -1
  42. package/dist/cloud/vps/provision.js +11 -1
  43. package/dist/cloud/vps/provision.js.map +1 -1
  44. package/dist/cloud/vps/ssh.d.ts +7 -0
  45. package/dist/cloud/vps/ssh.d.ts.map +1 -1
  46. package/dist/cloud/vps/ssh.js +15 -1
  47. package/dist/cloud/vps/ssh.js.map +1 -1
  48. package/dist/credentials/builtins/index.d.ts.map +1 -1
  49. package/dist/credentials/builtins/index.js +6 -0
  50. package/dist/credentials/builtins/index.js.map +1 -1
  51. package/dist/credentials/builtins/mintlify-token.d.ts +4 -0
  52. package/dist/credentials/builtins/mintlify-token.d.ts.map +1 -0
  53. package/dist/credentials/builtins/mintlify-token.js +14 -0
  54. package/dist/credentials/builtins/mintlify-token.js.map +1 -0
  55. package/dist/credentials/builtins/mintlify-webhook-secret.d.ts +4 -0
  56. package/dist/credentials/builtins/mintlify-webhook-secret.d.ts.map +1 -0
  57. package/dist/credentials/builtins/mintlify-webhook-secret.js +12 -0
  58. package/dist/credentials/builtins/mintlify-webhook-secret.js.map +1 -0
  59. package/dist/credentials/builtins/reddit-oauth.d.ts +4 -0
  60. package/dist/credentials/builtins/reddit-oauth.d.ts.map +1 -0
  61. package/dist/credentials/builtins/reddit-oauth.js +71 -0
  62. package/dist/credentials/builtins/reddit-oauth.js.map +1 -0
  63. package/dist/docker/local-runtime.d.ts +0 -3
  64. package/dist/docker/local-runtime.d.ts.map +1 -1
  65. package/dist/docker/local-runtime.js +1 -34
  66. package/dist/docker/local-runtime.js.map +1 -1
  67. package/dist/docker/runtime.d.ts +0 -4
  68. package/dist/docker/runtime.d.ts.map +1 -1
  69. package/dist/gateway/index.d.ts +3 -0
  70. package/dist/gateway/index.d.ts.map +1 -1
  71. package/dist/gateway/index.js +23 -3
  72. package/dist/gateway/index.js.map +1 -1
  73. package/dist/gateway/routes/calls.d.ts +2 -1
  74. package/dist/gateway/routes/calls.d.ts.map +1 -1
  75. package/dist/gateway/routes/calls.js +12 -1
  76. package/dist/gateway/routes/calls.js.map +1 -1
  77. package/dist/gateway/routes/control.d.ts +2 -0
  78. package/dist/gateway/routes/control.d.ts.map +1 -1
  79. package/dist/gateway/routes/control.js +30 -2
  80. package/dist/gateway/routes/control.js.map +1 -1
  81. package/dist/gateway/routes/locks.d.ts +2 -0
  82. package/dist/gateway/routes/locks.d.ts.map +1 -1
  83. package/dist/gateway/routes/locks.js +20 -0
  84. package/dist/gateway/routes/locks.js.map +1 -1
  85. package/dist/gateway/routes/signals.d.ts +2 -1
  86. package/dist/gateway/routes/signals.d.ts.map +1 -1
  87. package/dist/gateway/routes/signals.js +21 -1
  88. package/dist/gateway/routes/signals.js.map +1 -1
  89. package/dist/remote/bootstrap.d.ts +2 -0
  90. package/dist/remote/bootstrap.d.ts.map +1 -1
  91. package/dist/remote/bootstrap.js +5 -9
  92. package/dist/remote/bootstrap.js.map +1 -1
  93. package/dist/remote/push.js +85 -71
  94. package/dist/remote/push.js.map +1 -1
  95. package/dist/scheduler/events.d.ts +78 -0
  96. package/dist/scheduler/events.d.ts.map +1 -0
  97. package/dist/scheduler/events.js +65 -0
  98. package/dist/scheduler/events.js.map +1 -0
  99. package/dist/scheduler/execution.d.ts +15 -0
  100. package/dist/scheduler/execution.d.ts.map +1 -1
  101. package/dist/scheduler/execution.js +31 -2
  102. package/dist/scheduler/execution.js.map +1 -1
  103. package/dist/scheduler/index.d.ts +5 -0
  104. package/dist/scheduler/index.d.ts.map +1 -1
  105. package/dist/scheduler/index.js +61 -17
  106. package/dist/scheduler/index.js.map +1 -1
  107. package/dist/scheduler/webhook-setup.d.ts.map +1 -1
  108. package/dist/scheduler/webhook-setup.js +16 -0
  109. package/dist/scheduler/webhook-setup.js.map +1 -1
  110. package/dist/setup/scaffold.js +2 -2
  111. package/dist/setup/scaffold.js.map +1 -1
  112. package/dist/shared/config.d.ts +1 -0
  113. package/dist/shared/config.d.ts.map +1 -1
  114. package/dist/shared/config.js.map +1 -1
  115. package/dist/webhooks/definitions/github.d.ts.map +1 -1
  116. package/dist/webhooks/definitions/github.js +13 -0
  117. package/dist/webhooks/definitions/github.js.map +1 -1
  118. package/dist/webhooks/providers/github.d.ts.map +1 -1
  119. package/dist/webhooks/providers/github.js +6 -0
  120. package/dist/webhooks/providers/github.js.map +1 -1
  121. package/dist/webhooks/providers/mintlify.d.ts +9 -0
  122. package/dist/webhooks/providers/mintlify.d.ts.map +1 -0
  123. package/dist/webhooks/providers/mintlify.js +69 -0
  124. package/dist/webhooks/providers/mintlify.js.map +1 -0
  125. package/dist/webhooks/types.d.ts +9 -1
  126. package/dist/webhooks/types.d.ts.map +1 -1
  127. package/docker/bin/_http-exit +35 -0
  128. package/docker/bin/al-call +10 -4
  129. package/docker/bin/al-check +9 -3
  130. package/docker/bin/al-status +1 -1
  131. package/docker/bin/al-wait +11 -3
  132. package/docker/bin/rlock +9 -2
  133. package/docker/bin/rlock-heartbeat +9 -2
  134. package/docker/bin/runlock +9 -2
  135. package/package.json +2 -2
  136. package/docs/agent-config-reference.md +0 -313
  137. package/docs/agents.md +0 -256
  138. package/docs/cloud-run.md +0 -173
  139. package/docs/cloud.md +0 -98
  140. package/docs/commands.md +0 -286
  141. package/docs/config-reference.md +0 -241
  142. package/docs/creating-agents.md +0 -147
  143. package/docs/credentials.md +0 -167
  144. package/docs/docker.md +0 -323
  145. package/docs/ecs.md +0 -795
  146. package/docs/examples/dev/ACTIONS.md +0 -96
  147. package/docs/examples/dev/README.md +0 -42
  148. package/docs/examples/dev/agent-config.toml +0 -24
  149. package/docs/examples/index.md +0 -15
  150. package/docs/examples/planner/ACTIONS.md +0 -177
  151. package/docs/examples/planner/README.md +0 -39
  152. package/docs/examples/planner/agent-config.toml +0 -31
  153. package/docs/examples/reviewer/ACTIONS.md +0 -153
  154. package/docs/examples/reviewer/README.md +0 -39
  155. package/docs/examples/reviewer/agent-config.toml +0 -21
  156. package/docs/models.md +0 -191
  157. package/docs/vps-deployment.md +0 -285
  158. package/docs/web-dashboard.md +0 -113
  159. package/docs/webhooks.md +0 -152
  160. /package/{docs/agent-reference → agent-docs}/skills/credentials.md +0 -0
  161. /package/{docs/agent-reference → agent-docs}/skills/environment.md +0 -0
package/docs/webhooks.md DELETED
@@ -1,152 +0,0 @@
1
- # Webhooks
2
-
3
- Action Llama agents can be triggered by webhooks in addition to (or instead of) cron schedules.
4
-
5
- ## Defining Webhook Sources
6
-
7
- Webhook sources are defined once in the project's `config.toml`. Each source has a name, a provider type, and an optional credential for signature validation:
8
-
9
- ```toml
10
- [webhooks.my-github]
11
- type = "github"
12
- credential = "MyOrg" # credential instance name (github_webhook_secret:MyOrg)
13
-
14
- [webhooks.my-sentry]
15
- type = "sentry"
16
- credential = "SentryProd" # credential instance name (sentry_client_secret:SentryProd)
17
-
18
- [webhooks.my-linear]
19
- type = "linear"
20
- credential = "LinearMain" # credential instance name (linear_webhook_secret:LinearMain)
21
- ```
22
-
23
- | Field | Type | Required | Description |
24
- |-------|------|----------|-------------|
25
- | `type` | string | Yes | Provider type: `"github"`, `"sentry"`, or `"linear"` |
26
- | `credential` | string | No | Credential instance name for HMAC signature validation. Omit for unsigned webhooks. |
27
-
28
- ## Agent Webhook Triggers
29
-
30
- Agents reference a webhook source by name and add filters in their `agent-config.toml`:
31
-
32
- ```toml
33
- [[webhooks]]
34
- source = "my-github"
35
- repos = ["acme/app"]
36
- events = ["issues"]
37
- actions = ["labeled"]
38
- labels = ["agent"]
39
-
40
- # Filter by organization
41
- [[webhooks]]
42
- source = "my-github"
43
- orgs = ["acme", "example-org"]
44
- events = ["issues"]
45
-
46
- # Or using the singular form
47
- [[webhooks]]
48
- source = "my-github"
49
- org = "acme"
50
- events = ["pull_request"]
51
- ```
52
-
53
- Each `[[webhooks]]` entry is a trigger. The `source` field (referencing a name from `config.toml`) is required. All filter fields (`repos`, `events`, `actions`, `labels`, etc.) are optional — omit all of them to trigger on everything from that source.
54
-
55
- An agent must have at least one of `schedule` or `webhooks` (or both).
56
-
57
- ## GitHub Webhooks
58
-
59
- ### Filter Fields (all optional)
60
-
61
- | Field | Type | Description |
62
- |-------|------|-------------|
63
- | `repos` | string[] | Only trigger for these repos |
64
- | `orgs` | string[] | Only trigger for these organizations |
65
- | `org` | string | Only trigger for this organization (singular form) |
66
- | `events` | string[] | GitHub event types (issues, pull_request, push, etc.) |
67
- | `actions` | string[] | Event actions (opened, labeled, closed, etc.) |
68
- | `labels` | string[] | Only when issue/PR has these labels |
69
- | `assignee` | string | Only when assigned to this user |
70
- | `author` | string | Only for this author |
71
- | `branches` | string[] | Only for these branches |
72
-
73
- ### Setup
74
-
75
- 1. In your GitHub repo, go to **Settings > Webhooks > Add webhook**
76
- 2. Set the payload URL to your Action Llama gateway (e.g. `https://your-server:8080/webhooks/github`)
77
- 3. Set content type to `application/json`
78
- 4. Set the secret to match the `github_webhook_secret` credential instance referenced by the webhook source in `config.toml`
79
- 5. Select the events you want to receive
80
-
81
- ### Using ngrok for Local Development
82
-
83
- ```bash
84
- ngrok http 8080
85
- ```
86
-
87
- Use the ngrok URL as your webhook payload URL in GitHub.
88
-
89
- ## Sentry Webhooks
90
-
91
- ### Filter Fields
92
-
93
- | Field | Type | Description |
94
- |-------|------|-------------|
95
- | `resources` | string[] | Resource types: event_alert, metric_alert, issue, error, comment |
96
-
97
- ### Setup
98
-
99
- 1. In Sentry, go to **Settings > Developer Settings > New Internal Integration**
100
- 2. Set the webhook URL to your gateway (e.g. `https://your-server:8080/webhooks/sentry`)
101
- 3. Copy the client secret to `~/.action-llama/credentials/sentry_client_secret/<instance>/secret`
102
- 4. Select the resource types you want to receive
103
-
104
- ## How Webhooks Work at Runtime
105
-
106
- 1. The gateway receives a webhook POST request at `/webhooks/<type>` (e.g. `/webhooks/github`)
107
- 2. It verifies the payload signature using secrets loaded from the credential instances defined in `config.toml` webhook sources
108
- 3. It parses the event into a `WebhookContext` (source, event, action, repo, etc.)
109
- 4. It matches the context against each agent's webhook triggers
110
- 5. Matching agents are triggered with the webhook context injected into their prompt
111
-
112
- ## Linear Webhooks
113
-
114
- ### Filter Fields (all optional)
115
-
116
- | Field | Type | Description |
117
- |-------|------|-------------|
118
- | `organizations` | string[] | Only trigger for these Linear organizations |
119
- | `events` | string[] | Linear event types (issues, issue_comment, etc.) |
120
- | `actions` | string[] | Event actions (create, update, delete, etc.) |
121
- | `labels` | string[] | Only when issue has these labels |
122
- | `assignee` | string | Only when assigned to this user (email) |
123
- | `author` | string | Only for this author (email) |
124
-
125
- ### Setup
126
-
127
- 1. In Linear, go to **Settings > Workspace > Webhooks**
128
- 2. Click **Create webhook**
129
- 3. Set the URL to your Action Llama gateway (e.g. `https://your-server:8080/webhooks/linear`)
130
- 4. Set the secret to match the `linear_webhook_secret` credential instance referenced by the webhook source in `config.toml`
131
- 5. Select the resource types you want to receive (Issues, Comments, etc.)
132
-
133
- ### Example Configuration
134
-
135
- ```toml
136
- # In config.toml
137
- [webhooks.linear-main]
138
- type = "linear"
139
- credential = "main-workspace"
140
-
141
- # In agent-config.toml
142
- [[webhooks]]
143
- source = "linear-main"
144
- events = ["issues", "issue_comment"]
145
- actions = ["create", "update"]
146
- organizations = ["your-org-id"]
147
- labels = ["bug", "ready-for-dev"]
148
- ```
149
-
150
- ## Hybrid Agents
151
-
152
- Agents can have both `schedule` and `webhooks`. Scheduled runs poll for work; webhook runs respond to events immediately.