@praveencs/agent 0.9.0 → 0.9.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/README.md +53 -3
- package/dist/src/cli/repl.js +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -39,8 +39,9 @@ $ agent
|
|
|
39
39
|
| **⚡ Autonomous Execution** | Background daemon processes tasks with retries, rollback, and verification |
|
|
40
40
|
| **🛠️ Extensible Skills** | Markdown-based skill definitions—install from a hub or write your own |
|
|
41
41
|
| **⚡ Lightweight Commands** | Quick goal templates as markdown files—no boilerplate needed |
|
|
42
|
+
| **📜 Scripts System** | Repeatable local tasks defined in `script.yaml` for direct execution |
|
|
42
43
|
| **🪝 Lifecycle Hooks** | Intercept execution at 10 event points (before:tool, after:plan, etc.) |
|
|
43
|
-
| **🔌 Plugin System** | Bundle skills, commands, and hooks into distributable packages |
|
|
44
|
+
| **🔌 Plugin System** | Bundle skills, commands, scripts, and hooks into distributable packages |
|
|
44
45
|
| **🔧 Multi-CLI Orchestration** | Delegate tasks to Cursor, Codex, Gemini, or Claude CLIs |
|
|
45
46
|
| **💾 Persistent Memory** | SQLite + FTS5 semantic memory across sessions |
|
|
46
47
|
| **❤️ Self-Improvement** | Monitors skill metrics and auto-patches failing skills |
|
|
@@ -110,6 +111,7 @@ The agent **remembers context** across turns—no need to repeat yourself.
|
|
|
110
111
|
| `/help` | Show all available commands |
|
|
111
112
|
| `/skills` | List installed skills with status |
|
|
112
113
|
| `/commands` | List available lightweight commands |
|
|
114
|
+
| `/scripts` | List available local scripts |
|
|
113
115
|
| `/hooks` | Show registered lifecycle hooks |
|
|
114
116
|
| `/model` | Display current model and provider info |
|
|
115
117
|
| `/compact` | Summarize conversation and free context |
|
|
@@ -196,7 +198,45 @@ agent commands list # See all available commands
|
|
|
196
198
|
|
|
197
199
|
---
|
|
198
200
|
|
|
199
|
-
### 5.
|
|
201
|
+
### 5. Scripts
|
|
202
|
+
|
|
203
|
+
Scripts are repeatable, scriptable tasks (shell/Node Python) defined via a `script.yaml` manifest. They differ from Skills and Commands because they execute directly without LLM involvement, making them perfect for CI/CD tasks, builds, or deployments.
|
|
204
|
+
|
|
205
|
+
Create `.agent/scripts/deploy/script.yaml`:
|
|
206
|
+
|
|
207
|
+
```yaml
|
|
208
|
+
name: deploy-staging
|
|
209
|
+
description: Build and deploy current branch to staging
|
|
210
|
+
entrypoint: deploy.sh
|
|
211
|
+
confirm: true
|
|
212
|
+
args:
|
|
213
|
+
branch:
|
|
214
|
+
description: Branch to deploy
|
|
215
|
+
default: main
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
Create exactly the script you need (`deploy.sh` or `deploy.ts`):
|
|
219
|
+
|
|
220
|
+
```bash
|
|
221
|
+
#!/bin/bash
|
|
222
|
+
echo "Deploying branch ${SCRIPT_ARG_BRANCH:-main}..."
|
|
223
|
+
npm run build && git push origin HEAD:staging
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
Now execute it directly from the CLI or REPL:
|
|
227
|
+
|
|
228
|
+
```bash
|
|
229
|
+
agent scripts run deploy-staging --branch develop
|
|
230
|
+
# or interactively
|
|
231
|
+
> /scripts
|
|
232
|
+
> agent scripts run deploy-staging
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
Scripts are automatically provided as context to the LLM, so if you ask the agent to "deploy to staging", it knows it can use your exact shell script to do it.
|
|
236
|
+
|
|
237
|
+
---
|
|
238
|
+
|
|
239
|
+
### 6. Lifecycle Hooks
|
|
200
240
|
|
|
201
241
|
Hooks intercept agent execution at every point. Define them in `.agent/hooks/hooks.json`:
|
|
202
242
|
|
|
@@ -264,6 +304,7 @@ my-plugin/
|
|
|
264
304
|
"description": "Security scanning and compliance",
|
|
265
305
|
"skills": ["skills/"],
|
|
266
306
|
"commands": ["commands/"],
|
|
307
|
+
"scripts": ["scripts/"],
|
|
267
308
|
"hooks": "hooks/hooks.json"
|
|
268
309
|
}
|
|
269
310
|
```
|
|
@@ -380,6 +421,14 @@ agent memory add "Staging server is at 10.0.0.5" --category fact
|
|
|
380
421
|
|---------|-------------|
|
|
381
422
|
| `agent commands list` | List available commands |
|
|
382
423
|
|
|
424
|
+
### Scripts
|
|
425
|
+
|
|
426
|
+
| Command | Description |
|
|
427
|
+
|---------|-------------|
|
|
428
|
+
| `agent scripts list` | List available scripts |
|
|
429
|
+
| `agent scripts run <name>` | Execute a script directly |
|
|
430
|
+
| `agent scripts show <name>` | Show script arguments and details |
|
|
431
|
+
|
|
383
432
|
### Hooks
|
|
384
433
|
|
|
385
434
|
| Command | Description |
|
|
@@ -445,8 +494,9 @@ agent memory add "Staging server is at 10.0.0.5" --category fact
|
|
|
445
494
|
- **LLM Router**: Multi-provider with offline-first support and fallback chains
|
|
446
495
|
- **Skills**: Markdown prompt-based capabilities
|
|
447
496
|
- **Commands**: Lightweight goal templates (YAML frontmatter + prompt)
|
|
497
|
+
- **Scripts**: Direct executable automation with argument injection
|
|
448
498
|
- **Hooks**: Event-driven lifecycle interception
|
|
449
|
-
- **Plugins**: Distributable bundles of skills + commands + hooks
|
|
499
|
+
- **Plugins**: Distributable bundles of skills + commands + scripts + hooks
|
|
450
500
|
- **Tool Registry**: Sandboxed tool execution with permission gates
|
|
451
501
|
- **Policy Engine**: Human-in-the-loop approval for sensitive operations
|
|
452
502
|
- **Multi-CLI Tools**: Cursor, Codex, Gemini, Claude wrappers
|
package/dist/src/cli/repl.js
CHANGED
|
@@ -52,7 +52,7 @@ export async function startREPL() {
|
|
|
52
52
|
const providerConfig = config.models.providers[defaultProvider];
|
|
53
53
|
const modelName = providerConfig?.model ?? defaultProvider;
|
|
54
54
|
renderBanner(config, {
|
|
55
|
-
version: '0.9.
|
|
55
|
+
version: '0.9.1',
|
|
56
56
|
project: projectName,
|
|
57
57
|
skillCount: skillLoader.list().length,
|
|
58
58
|
commandCount: commandLoader.list().length,
|