@elisym/cli 0.7.10 → 0.8.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 +74 -12
- package/dist/index.js +252 -65
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/skills-examples/README.md +32 -14
- package/skills-examples/static-now/SKILL.md +10 -0
- package/skills-examples/static-now/scripts/now.sh +3 -0
- package/skills-examples/static-welcome/SKILL.md +10 -0
- package/skills-examples/static-welcome/welcome.md +17 -0
- package/skills-examples/uppercase-proxy/SKILL.md +10 -0
- package/skills-examples/uppercase-proxy/scripts/upper.sh +4 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elisym/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.1",
|
|
4
4
|
"description": "CLI agent runner for elisym - provider mode, skills, crash recovery",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-agents",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"prepublishOnly": "bun run build && node scripts/preflight-publish.mjs"
|
|
45
45
|
},
|
|
46
46
|
"dependencies": {
|
|
47
|
-
"@elisym/sdk": "~0.12.
|
|
47
|
+
"@elisym/sdk": "~0.12.5",
|
|
48
48
|
"@solana-program/memo": "~0.11.0",
|
|
49
49
|
"@solana-program/system": "~0.12.0",
|
|
50
50
|
"@solana-program/token": "~0.5.0",
|
|
@@ -6,18 +6,31 @@ These are **provider runtime skills** in elisym's own format (`capabilities`, `p
|
|
|
6
6
|
|
|
7
7
|
## Available skills
|
|
8
8
|
|
|
9
|
-
| Skill | Price
|
|
10
|
-
| ----------------------------------------- |
|
|
11
|
-
| [general-assistant](./general-assistant/) | free
|
|
12
|
-
| [usdc-summarize](./usdc-summarize/) | 0.05 USDC
|
|
13
|
-
| [site-status](./site-status/) | 0.01 USDC
|
|
14
|
-
| [whois-lookup](./whois-lookup/) | 0.01 USDC
|
|
15
|
-
| [github-repo](./github-repo/) | 0.01 USDC
|
|
16
|
-
| [stock-price](./stock-price/) | 0.01 USDC
|
|
17
|
-
| [trending](./trending/) | 0.02 USDC
|
|
18
|
-
| [youtube-summary](./youtube-summary/) | 0.10 USDC
|
|
19
|
-
|
|
20
|
-
|
|
9
|
+
| Skill | Price | Mode | What it does |
|
|
10
|
+
| ----------------------------------------- | ---------- | -------------- | ----------------------------------------------------------------------------------------- |
|
|
11
|
+
| [general-assistant](./general-assistant/) | free | llm | Summarize, translate, review code, generate text - short answers |
|
|
12
|
+
| [usdc-summarize](./usdc-summarize/) | 0.05 USDC | llm | 2-3 sentence summary of long text |
|
|
13
|
+
| [site-status](./site-status/) | 0.01 USDC | llm + python | HTTP status, response time, SSL validity, redirect chain |
|
|
14
|
+
| [whois-lookup](./whois-lookup/) | 0.01 USDC | llm + python | Domain registrar, dates, name servers, status |
|
|
15
|
+
| [github-repo](./github-repo/) | 0.01 USDC | llm + python | Stars, forks, language, license, last activity for `owner/repo` |
|
|
16
|
+
| [stock-price](./stock-price/) | 0.01 USDC | llm + python | Quote, daily change, volume, 52-week range for a ticker |
|
|
17
|
+
| [trending](./trending/) | 0.02 USDC | llm + python | Top GitHub repos or Reddit posts, ranked |
|
|
18
|
+
| [youtube-summary](./youtube-summary/) | 0.10 USDC | llm + python | Overview, key points, takeaways from a YouTube link (multi-round tools) |
|
|
19
|
+
| [static-welcome](./static-welcome/) | 0.001 SOL | static-file | Sells a fixed Markdown welcome doc. No input box on the buyer side, just a Buy button |
|
|
20
|
+
| [static-now](./static-now/) | 0.0005 SOL | static-script | Returns the current UTC timestamp from a 1-line shell script. No LLM, no input |
|
|
21
|
+
| [uppercase-proxy](./uppercase-proxy/) | 0.0005 SOL | dynamic-script | Pipes the buyer's text to a script (`tr a-z A-Z`). Skeleton for crypto-paid model proxies |
|
|
22
|
+
|
|
23
|
+
Most examples are **paid in USDC on Solana devnet** except `general-assistant` (free) and the three non-LLM ones at the bottom (priced in SOL for variety). Paid skills publish a payment requirement with their capability card and only run after the customer's on-chain transfer is confirmed. To make one free, drop `price` and `token` from its frontmatter; to switch to SOL, set `token: sol` and price in SOL.
|
|
24
|
+
|
|
25
|
+
### Non-LLM modes
|
|
26
|
+
|
|
27
|
+
The last three rows skip the LLM entirely. Set `mode:` in the frontmatter:
|
|
28
|
+
|
|
29
|
+
- `mode: static-file` + `output_file:` - sells the literal contents of a file. No input box on the buyer side; the webapp shows just a Buy button.
|
|
30
|
+
- `mode: static-script` + `script:` - runs a script with no stdin per purchase, returns its stdout. Same "Buy only" UI.
|
|
31
|
+
- `mode: dynamic-script` + `script:` - the buyer's text is piped to the script's stdin, stdout becomes the result. The buyer still sees an input box; the agent is just not an LLM. This is the right shape for a crypto-paid proxy in front of any HTTP-callable model.
|
|
32
|
+
|
|
33
|
+
When every loaded skill is non-LLM, `npx @elisym/cli start` does not require an `ANTHROPIC_API_KEY` / `OPENAI_API_KEY`.
|
|
21
34
|
|
|
22
35
|
## Install all examples
|
|
23
36
|
|
|
@@ -57,7 +70,12 @@ Create a folder with a `SKILL.md`. Frontmatter fields:
|
|
|
57
70
|
- `capabilities` (required) - list of tags clients filter on
|
|
58
71
|
- `price` (optional) - number; omit for a free skill
|
|
59
72
|
- `token` (optional) - `sol` (default) or `usdc`
|
|
60
|
-
- `
|
|
61
|
-
- `
|
|
73
|
+
- `mode` (optional) - `llm` (default), `static-file`, `static-script`, or `dynamic-script`
|
|
74
|
+
- `output_file` (required when `mode: static-file`) - path inside the skill dir
|
|
75
|
+
- `script` (required when `mode: static-script` or `dynamic-script`) - path inside the skill dir
|
|
76
|
+
- `script_args` (optional, script modes) - array of strings appended after the script
|
|
77
|
+
- `script_timeout_ms` (optional, script modes) - default 60000
|
|
78
|
+
- `tools` (optional, `llm` mode only) - external scripts the LLM can call via `child_process.spawn`
|
|
79
|
+
- `max_tool_rounds` (optional, `llm` mode only) - default 10
|
|
62
80
|
|
|
63
81
|
Body text after the frontmatter becomes the LLM system prompt. See [`packages/cli/GUIDE.md`](../GUIDE.md) for a full walkthrough and the `youtube-summary` skill for a multi-round tool-use example.
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# Welcome to elisym
|
|
2
|
+
|
|
3
|
+
You bought this pack because you want to ship an agent that gets paid in crypto without writing a backend.
|
|
4
|
+
|
|
5
|
+
What you get out of the box:
|
|
6
|
+
|
|
7
|
+
- NIP-89 capability cards: your agent shows up in any elisym client.
|
|
8
|
+
- NIP-90 job flow: customers send work, you send results.
|
|
9
|
+
- Solana payments: protocol fee is taken on-chain, the rest lands in your wallet.
|
|
10
|
+
|
|
11
|
+
Next steps:
|
|
12
|
+
|
|
13
|
+
- Run `npx @elisym/cli init` to scaffold an agent.
|
|
14
|
+
- Drop a SKILL.md into the agent's `skills/` directory.
|
|
15
|
+
- Run `npx @elisym/cli start <agent-name>` and you are live.
|
|
16
|
+
|
|
17
|
+
That is the whole loop. Build something interesting.
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: uppercase
|
|
3
|
+
description: Send any text, get it back in upper case. Demonstrates piping user input to a script with no LLM in the middle.
|
|
4
|
+
capabilities:
|
|
5
|
+
- uppercase
|
|
6
|
+
- text-transform
|
|
7
|
+
price: 0.0005
|
|
8
|
+
mode: dynamic-script
|
|
9
|
+
script: ./scripts/upper.sh
|
|
10
|
+
---
|