@kaleidorg/mind 0.8.1 → 0.10.0
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 +7 -5
- package/dist/bitrefill/index.d.ts +4 -0
- package/dist/bitrefill/index.d.ts.map +1 -0
- package/dist/bitrefill/index.js +3 -0
- package/dist/bitrefill/index.js.map +1 -0
- package/dist/capabilities.d.ts +3 -3
- package/dist/capabilities.d.ts.map +1 -1
- package/dist/capabilities.js +4 -4
- package/dist/capabilities.js.map +1 -1
- package/dist/engine/answer.d.ts +37 -0
- package/dist/engine/answer.d.ts.map +1 -0
- package/dist/engine/answer.js +35 -0
- package/dist/engine/answer.js.map +1 -0
- package/dist/engine.d.ts +9 -3
- package/dist/engine.d.ts.map +1 -1
- package/dist/engine.js +159 -175
- package/dist/engine.js.map +1 -1
- package/dist/evidence.d.ts +1 -1
- package/dist/evidence.d.ts.map +1 -1
- package/dist/flashnet/index.d.ts +5 -0
- package/dist/flashnet/index.d.ts.map +1 -0
- package/dist/flashnet/index.js +4 -0
- package/dist/flashnet/index.js.map +1 -0
- package/dist/guards.d.ts.map +1 -1
- package/dist/guards.js +20 -0
- package/dist/guards.js.map +1 -1
- package/dist/index.d.ts +7 -24
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +11 -28
- package/dist/index.js.map +1 -1
- package/dist/kaleidoswap/contract.d.ts +7 -0
- package/dist/kaleidoswap/contract.d.ts.map +1 -1
- package/dist/kaleidoswap/contract.js +71 -17
- package/dist/kaleidoswap/contract.js.map +1 -1
- package/dist/kaleidoswap/index.d.ts +8 -0
- package/dist/kaleidoswap/index.d.ts.map +1 -0
- package/dist/kaleidoswap/index.js +7 -0
- package/dist/kaleidoswap/index.js.map +1 -0
- package/dist/knowledge/index.d.ts +9 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +6 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/lsps1/index.d.ts +4 -0
- package/dist/lsps1/index.d.ts.map +1 -0
- package/dist/lsps1/index.js +3 -0
- package/dist/lsps1/index.js.map +1 -0
- package/dist/providers/types.d.ts +3 -3
- package/dist/providers/types.js +3 -3
- package/dist/qvac/index.d.ts +0 -1
- package/dist/qvac/index.d.ts.map +1 -1
- package/dist/qvac/index.js +0 -1
- package/dist/qvac/index.js.map +1 -1
- package/dist/qvac/provider.d.ts +9 -9
- package/dist/qvac/provider.d.ts.map +1 -1
- package/dist/qvac/provider.js +115 -109
- package/dist/qvac/provider.js.map +1 -1
- package/dist/qvac/stream.d.ts +4 -3
- package/dist/qvac/stream.d.ts.map +1 -1
- package/dist/qvac/stream.js.map +1 -1
- package/dist/qvac/voice.d.ts +1 -1
- package/dist/recipe/asset-send.js +1 -1
- package/dist/recipe/asset-send.js.map +1 -1
- package/dist/submarine/index.d.ts +5 -0
- package/dist/submarine/index.d.ts.map +1 -0
- package/dist/submarine/index.js +4 -0
- package/dist/submarine/index.js.map +1 -0
- package/dist/testing/mock-wallet.d.ts.map +1 -1
- package/dist/testing/mock-wallet.js +6 -0
- package/dist/testing/mock-wallet.js.map +1 -1
- package/dist/tools/in-process.d.ts +2 -2
- package/dist/tools/in-process.js +2 -2
- package/dist/wallet/contract.d.ts +5 -0
- package/dist/wallet/contract.d.ts.map +1 -1
- package/dist/wallet/contract.js +39 -6
- package/dist/wallet/contract.js.map +1 -1
- package/package.json +32 -2
- package/scripts/snapshot-mcp-tools.mjs +38 -0
- package/skills/README.md +98 -64
- package/skills/bitrefill/SKILL.md +30 -157
- package/skills/channel-manager/SKILL.md +31 -52
- package/skills/flashnet-swaps/SKILL.md +24 -150
- package/skills/kaleido-node/SKILL.md +25 -55
- package/skills/kaleido-trading/SKILL.md +28 -172
- package/skills/kaleido-trading/references/assets.md +4 -4
- package/skills/kaleido-trading/references/atomic.md +5 -7
- package/skills/merchant-finder/SKILL.md +25 -108
- package/skills/paid-data/SKILL.md +25 -58
- package/skills/portfolio-manager/SKILL.md +26 -60
- package/skills/rgb-lightning-node/SKILL.md +37 -255
- package/skills/rgb-lightning-node/references/channels.md +34 -0
- package/skills/spark-wallet/SKILL.md +26 -228
- package/skills/submarine-swaps/SKILL.md +19 -37
- package/skills/wallet-assistant/SKILL.md +26 -44
- package/src/bitrefill/index.ts +13 -0
- package/src/capabilities.ts +7 -7
- package/src/context/context.test.ts +2 -2
- package/src/engine/answer.ts +66 -0
- package/src/engine.ts +185 -194
- package/src/evidence.ts +1 -1
- package/src/flashnet/index.ts +14 -0
- package/src/funnel.mind.test.ts +6 -5
- package/src/guards.test.ts +12 -0
- package/src/guards.ts +20 -0
- package/src/index.ts +11 -107
- package/src/kaleidoswap/contract.test.ts +32 -3
- package/src/kaleidoswap/contract.ts +65 -17
- package/src/kaleidoswap/index.ts +20 -0
- package/src/knowledge/index.ts +14 -0
- package/src/lsps1/index.ts +13 -0
- package/src/providers/types.ts +3 -3
- package/src/qvac/index.ts +0 -8
- package/src/qvac/provider.test.ts +17 -17
- package/src/qvac/provider.ts +33 -31
- package/src/qvac/stream.ts +4 -3
- package/src/qvac/voice.ts +1 -1
- package/src/recipe/asset-send.ts +1 -1
- package/src/recipe/recipe.test.ts +1 -1
- package/src/skills/catalog.test.ts +215 -0
- package/src/skills/mcp-tools.snapshot.json +1938 -0
- package/src/submarine/index.ts +17 -0
- package/src/testing/mock-wallet.ts +6 -0
- package/src/tools/in-process.ts +2 -2
- package/src/wallet/contract.test.ts +20 -1
- package/src/wallet/contract.ts +36 -6
- package/dist/qvac/delegate.d.ts +0 -50
- package/dist/qvac/delegate.d.ts.map +0 -1
- package/dist/qvac/delegate.js +0 -53
- package/dist/qvac/delegate.js.map +0 -1
- package/skills/dca/SKILL.md +0 -48
- package/skills/kaleido-lsps/SKILL.md +0 -131
- package/skills/liquidity-optimizer/SKILL.md +0 -91
- package/src/qvac/delegate.test.ts +0 -68
- package/src/qvac/delegate.ts +0 -73
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"contract.js","sourceRoot":"","sources":["../../src/wallet/contract.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kaleidorg/mind",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "Local-first reasoning + function-calling engine for KaleidoSwap. QVAC-powered.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -45,6 +45,36 @@
|
|
|
45
45
|
"import": "./dist/providers/openai.js",
|
|
46
46
|
"default": "./dist/providers/openai.js"
|
|
47
47
|
},
|
|
48
|
+
"./kaleidoswap": {
|
|
49
|
+
"types": "./dist/kaleidoswap/index.d.ts",
|
|
50
|
+
"import": "./dist/kaleidoswap/index.js",
|
|
51
|
+
"default": "./dist/kaleidoswap/index.js"
|
|
52
|
+
},
|
|
53
|
+
"./lsps1": {
|
|
54
|
+
"types": "./dist/lsps1/index.d.ts",
|
|
55
|
+
"import": "./dist/lsps1/index.js",
|
|
56
|
+
"default": "./dist/lsps1/index.js"
|
|
57
|
+
},
|
|
58
|
+
"./submarine": {
|
|
59
|
+
"types": "./dist/submarine/index.d.ts",
|
|
60
|
+
"import": "./dist/submarine/index.js",
|
|
61
|
+
"default": "./dist/submarine/index.js"
|
|
62
|
+
},
|
|
63
|
+
"./bitrefill": {
|
|
64
|
+
"types": "./dist/bitrefill/index.d.ts",
|
|
65
|
+
"import": "./dist/bitrefill/index.js",
|
|
66
|
+
"default": "./dist/bitrefill/index.js"
|
|
67
|
+
},
|
|
68
|
+
"./flashnet": {
|
|
69
|
+
"types": "./dist/flashnet/index.d.ts",
|
|
70
|
+
"import": "./dist/flashnet/index.js",
|
|
71
|
+
"default": "./dist/flashnet/index.js"
|
|
72
|
+
},
|
|
73
|
+
"./knowledge": {
|
|
74
|
+
"types": "./dist/knowledge/index.d.ts",
|
|
75
|
+
"import": "./dist/knowledge/index.js",
|
|
76
|
+
"default": "./dist/knowledge/index.js"
|
|
77
|
+
},
|
|
48
78
|
"./testing": {
|
|
49
79
|
"types": "./dist/testing/index.d.ts",
|
|
50
80
|
"import": "./dist/testing/index.js",
|
|
@@ -68,7 +98,7 @@
|
|
|
68
98
|
"bundle-skills": "node scripts/bundle-skills.mjs"
|
|
69
99
|
},
|
|
70
100
|
"peerDependencies": {
|
|
71
|
-
"@qvac/sdk": ">=0.
|
|
101
|
+
"@qvac/sdk": ">=0.20.0"
|
|
72
102
|
},
|
|
73
103
|
"peerDependenciesMeta": {
|
|
74
104
|
"@qvac/sdk": {
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// Refresh src/skills/mcp-tools.snapshot.json from a built kaleido-mcp checkout.
|
|
3
|
+
//
|
|
4
|
+
// git clone https://github.com/kaleidoswap/kaleido-mcp && (cd kaleido-mcp && npm ci && npm run build)
|
|
5
|
+
// node packages/core/scripts/snapshot-mcp-tools.mjs ../kaleido-mcp
|
|
6
|
+
//
|
|
7
|
+
// Boots kaleido-mcp over stdio with a throwaway test seed (so wallet tools
|
|
8
|
+
// register), lists every tool and stores its name, required args and argument
|
|
9
|
+
// schema. The skills test checks every skill against this file.
|
|
10
|
+
import { readFile, writeFile } from 'node:fs/promises'
|
|
11
|
+
import { resolve } from 'node:path'
|
|
12
|
+
import { pathToFileURL } from 'node:url'
|
|
13
|
+
|
|
14
|
+
const mcpDir = resolve(process.argv[2] ?? '../kaleido-mcp')
|
|
15
|
+
const out = new URL('../src/skills/mcp-tools.snapshot.json', import.meta.url)
|
|
16
|
+
const TEST_MNEMONIC = 'abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon abandon about'
|
|
17
|
+
|
|
18
|
+
const { listTools } = await import(pathToFileURL(resolve(mcpDir, 'tests/mcp-contract-test-utils.mjs')).href)
|
|
19
|
+
const { version } = JSON.parse(await readFile(resolve(mcpDir, 'package.json'), 'utf8'))
|
|
20
|
+
const listed = await listTools({
|
|
21
|
+
cwd: mcpDir,
|
|
22
|
+
env: { WDK_SEED: TEST_MNEMONIC, LIQUID_MNEMONIC: TEST_MNEMONIC, SPARK_NETWORK: 'REGTEST' },
|
|
23
|
+
})
|
|
24
|
+
|
|
25
|
+
const firstLine = (s) => String(s ?? '').split(/\n/)[0].trim()
|
|
26
|
+
const tools = {}
|
|
27
|
+
for (const t of [...listed].sort((a, b) => a.name.localeCompare(b.name))) {
|
|
28
|
+
const props = t.inputSchema?.properties ?? {}
|
|
29
|
+
tools[t.name] = {
|
|
30
|
+
required: t.inputSchema?.required ?? [],
|
|
31
|
+
properties: Object.fromEntries(
|
|
32
|
+
Object.entries(props).map(([k, v]) => [k, { type: v.type ?? 'any', description: firstLine(v.description) }]),
|
|
33
|
+
),
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
await writeFile(out, `${JSON.stringify({ source: 'kaleido-mcp', version, tools }, null, 2)}\n`)
|
|
38
|
+
process.stdout.write(`mcp-tools.snapshot.json: ${Object.keys(tools).length} tools from kaleido-mcp ${version}\n`)
|
package/skills/README.md
CHANGED
|
@@ -1,83 +1,117 @@
|
|
|
1
1
|
# Skills
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
Skills
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
3
|
+
Agent Skills the `@kaleidorg/mind` engine loads at runtime (Anthropic Agent
|
|
4
|
+
Skills format, so the same folders also work as Claude Code skills). For each
|
|
5
|
+
query the engine picks one skill, appends its body to the system prompt and
|
|
6
|
+
limits the model to that skill's tools. Long reference material lives in
|
|
7
|
+
`references/*.md` and is read on demand with the `read_skill_reference` tool.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
9
|
+
## Shipped skills
|
|
10
|
+
|
|
11
|
+
| Skill | Use | Tools from |
|
|
12
|
+
|---|---|---|
|
|
13
|
+
| `rgb-lightning-node` | RGB holdings, issuance, RGB/Lightning invoices, sends | kaleido-mcp or in-app |
|
|
14
|
+
| `kaleido-trading` | KaleidoSwap quotes and atomic swaps | kaleido-mcp or in-app |
|
|
15
|
+
| `kaleido-node` | Start, stop, init and unlock the node | kaleido-mcp |
|
|
16
|
+
| `channel-manager` | Channels, liquidity, LSP channel orders, heartbeat | kaleido-mcp |
|
|
17
|
+
| `portfolio-manager` | Allocation, rebalancing, DCA | kaleido-mcp or in-app |
|
|
18
|
+
| `submarine-swaps` | Pay Lightning from Liquid (L-USDT, L-BTC) | kaleido-mcp or in-app |
|
|
19
|
+
| `paid-data` | L402 / MPP paywalled APIs | kaleido-mcp or in-app |
|
|
20
|
+
| `wallet-assistant` | In-app balances, receive, send, contacts | in-app |
|
|
21
|
+
| `spark-wallet` | In-app Spark wallet | in-app |
|
|
22
|
+
| `flashnet-swaps` | BTC ↔ Spark tokens on Flashnet | in-app |
|
|
23
|
+
| `merchant-finder` | Places that accept Bitcoin (BTC Map) | in-app |
|
|
24
|
+
| `bitrefill` | Gift cards, top-ups, eSIMs (adapted from [bitrefill/agents](https://github.com/bitrefill/agents), MIT) | in-app |
|
|
25
|
+
|
|
26
|
+
"in-app" tools come from the contracts in `src/` (`wallet/`, `kaleidoswap/`,
|
|
27
|
+
`submarine/`, `flashnet/`, `bitrefill/`, …). Where a tool exists both in-app
|
|
28
|
+
and in kaleido-mcp it takes the same arguments in the same units, so one
|
|
29
|
+
example fits both.
|
|
13
30
|
|
|
14
|
-
##
|
|
31
|
+
## Writing a skill
|
|
15
32
|
|
|
16
|
-
```
|
|
33
|
+
```markdown
|
|
17
34
|
---
|
|
18
|
-
name: my-skill
|
|
19
|
-
description:
|
|
20
|
-
tools:
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
metadata: # optional — anything else (author, version, …)
|
|
24
|
-
author: kaleidoswap
|
|
35
|
+
name: my-skill
|
|
36
|
+
description: "One sentence: what it does and when to use it. This drives selection."
|
|
37
|
+
tools: rln_list_assets, rln_send_asset
|
|
38
|
+
requires-tools: rln_list_assets
|
|
39
|
+
triggers: token, send token
|
|
25
40
|
---
|
|
26
|
-
#
|
|
27
|
-
|
|
41
|
+
# My skill
|
|
42
|
+
|
|
43
|
+
One or two lines of context: units, where ids come from.
|
|
44
|
+
|
|
45
|
+
## Do
|
|
46
|
+
- Short, factual rules about the API: which tool for which intent, which
|
|
47
|
+
argument comes from which earlier result, what is confirm-gated.
|
|
48
|
+
|
|
49
|
+
## Examples
|
|
50
|
+
- "Send 5 SKT to rgb:…/utxob:abc" → `rln_list_assets {}` then `rln_send_asset {"asset_id":"<SKT asset_id>","recipient_id":"utxob:abc","amount":5}`
|
|
28
51
|
```
|
|
29
52
|
|
|
30
|
-
|
|
53
|
+
- `tools` — the only tools the model sees while the skill is active.
|
|
54
|
+
- `requires-tools` — the skill is skipped unless all of these are live. Use it
|
|
55
|
+
to keep a skill off hosts that can't run it (an in-app-only tool such as
|
|
56
|
+
`get_balances` keeps a skill in the app).
|
|
57
|
+
- `triggers` — keywords that boost selection; the description counts too.
|
|
58
|
+
- Examples are written as `` `tool_name {json}` `` with the exact argument names
|
|
59
|
+
and units of the tool schema; use `"<…>"` for values that come from an earlier
|
|
60
|
+
result. Keep the body under ~400 tokens and move detail to `references/`.
|
|
31
61
|
|
|
32
|
-
|
|
62
|
+
`src/skills/catalog.test.ts` checks every skill: each tool exists in the
|
|
63
|
+
in-app contracts or in kaleido-mcp, each example parses and uses valid argument
|
|
64
|
+
names (and values) on every surface that has the tool, and the body stays short.
|
|
65
|
+
Run it with `pnpm --filter @kaleidorg/mind test`.
|
|
33
66
|
|
|
34
|
-
|
|
35
|
-
import { loadSkillsDir, packagedSkillsDir } from '@kaleidorg/mind/skills';
|
|
36
|
-
import { SkillRegistry, createSkillReferenceToolSource } from '@kaleidorg/mind';
|
|
67
|
+
## Integrate in 3 steps
|
|
37
68
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
const refSource = createSkillReferenceToolSource(registry); // read_skill_reference
|
|
41
|
-
```
|
|
69
|
+
1. **Connect tools.** Start kaleido-mcp and wrap it as a tool source, and/or
|
|
70
|
+
bind your own handlers to a contract:
|
|
42
71
|
|
|
43
|
-
|
|
44
|
-
|
|
72
|
+
```ts
|
|
73
|
+
import { Engine, ToolRegistry, bindWalletTools } from '@kaleidorg/mind';
|
|
74
|
+
import { McpToolSource } from '@kaleidorg/mind/mcp';
|
|
45
75
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
```
|
|
50
|
-
```ts
|
|
51
|
-
import { SkillRegistry, skillsFromBundle } from '@kaleidorg/mind';
|
|
52
|
-
import bundle from './skills.bundle.json';
|
|
53
|
-
const registry = new SkillRegistry(skillsFromBundle(bundle));
|
|
54
|
-
```
|
|
76
|
+
const mcp = new McpToolSource({ id: 'kaleido', transport: { kind: 'stdio', command: 'npx', args: ['-y', 'kaleido-mcp'] } });
|
|
77
|
+
await mcp.connect();
|
|
78
|
+
const engine = new Engine({ provider, tools: new ToolRegistry([mcp]) });
|
|
79
|
+
```
|
|
55
80
|
|
|
56
|
-
|
|
57
|
-
`registry.compose(systemPrompt, skill)` → pass `{ system, allowedTools }` to
|
|
58
|
-
`engine.runAgentic(...)`.
|
|
81
|
+
2. **Load skills.** Node reads the folders; React Native ships a bundle:
|
|
59
82
|
|
|
60
|
-
|
|
83
|
+
```ts
|
|
84
|
+
import { SkillRegistry } from '@kaleidorg/mind';
|
|
85
|
+
import { loadSkillsDir, packagedSkillsDir } from '@kaleidorg/mind/skills';
|
|
86
|
+
const skills = new SkillRegistry([...loadSkillsDir(packagedSkillsDir()), ...loadSkillsDir('./my-skills')]);
|
|
87
|
+
```
|
|
61
88
|
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
89
|
+
```bash
|
|
90
|
+
node node_modules/@kaleidorg/mind/scripts/bundle-skills.mjs --out skills.bundle.json \
|
|
91
|
+
node_modules/@kaleidorg/mind/skills/kaleido-trading ./skills
|
|
92
|
+
```
|
|
65
93
|
|
|
66
|
-
|
|
94
|
+
3. **Run a query.** `composeSkill` picks a skill that can act with the live
|
|
95
|
+
tools and returns the prompt and tool scope:
|
|
96
|
+
|
|
97
|
+
```ts
|
|
98
|
+
const { system, allowedTools } = await engine.composeSkill(skills, question, basePrompt);
|
|
99
|
+
const res = await engine.runAgentic([{ role: 'system', content: system }, { role: 'user', content: question }], {
|
|
100
|
+
allowedTools,
|
|
101
|
+
onConfirm: async (call) => ({ approved: await askUser(call.summary) }),
|
|
102
|
+
});
|
|
103
|
+
```
|
|
104
|
+
|
|
105
|
+
To expose the reference files, add `createSkillReferenceToolSource(skills)` to
|
|
106
|
+
the `ToolRegistry`.
|
|
67
107
|
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
data when the host injects a fetch + location; bundled offline list otherwise.
|
|
79
|
-
Intentionally model-leveraging (updated playbook + pluggable selectors) for
|
|
80
|
-
natural language understanding of vague location queries, context use,
|
|
81
|
-
post-processing results, and hybrid RAG.
|
|
82
|
-
- **paid-data/** — fetch L402-paywalled resources via `fetch_paid_resource`.
|
|
83
|
-
- **kaleido-trading/** — prices, quotes, atomic swaps, LSP channels.
|
|
108
|
+
## Keeping the kaleido-mcp snapshot current
|
|
109
|
+
|
|
110
|
+
`src/skills/mcp-tools.snapshot.json` lists kaleido-mcp's tools and argument
|
|
111
|
+
schemas. After a kaleido-mcp release:
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
git clone https://github.com/kaleidoswap/kaleido-mcp ../kaleido-mcp
|
|
115
|
+
(cd ../kaleido-mcp && npm ci && npm run build)
|
|
116
|
+
node packages/core/scripts/snapshot-mcp-tools.mjs ../kaleido-mcp
|
|
117
|
+
```
|
|
@@ -1,166 +1,39 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: bitrefill
|
|
3
|
-
description: "Buy
|
|
4
|
-
tools: bitrefill_search, bitrefill_get_product, bitrefill_get_balance, bitrefill_create_invoice, bitrefill_get_invoice, bitrefill_get_order, spark_pay_invoice,
|
|
5
|
-
|
|
6
|
-
|
|
3
|
+
description: "Buy gift cards, mobile top-ups and eSIMs on Bitrefill (1,500+ brands, 180+ countries), paid from the Bitrefill balance or over Lightning: search, pick a package, create the invoice, read the redemption code."
|
|
4
|
+
tools: bitrefill_search, bitrefill_get_product, bitrefill_get_balance, bitrefill_create_invoice, bitrefill_get_invoice, bitrefill_get_order, spark_pay_invoice, rln_pay_invoice
|
|
5
|
+
requires-tools: bitrefill_search
|
|
6
|
+
triggers: bitrefill, gift card, gift cards, giftcard, voucher, top-up, topup, top up, esim, e-sim, mobile plan, prepaid, amazon, steam, google play, app store, itunes, playstation, xbox, netflix, spotify, uber
|
|
7
|
+
compatibility: "Needs BITREFILL_API_KEY (Personal) or BITREFILL_API_ID + BITREFILL_API_SECRET (Business); without them the tools are not registered."
|
|
7
8
|
metadata:
|
|
8
9
|
author: bitrefill
|
|
9
|
-
version: "3.
|
|
10
|
+
version: "3.1.0"
|
|
10
11
|
homepage: "https://www.bitrefill.com"
|
|
11
12
|
docs: "https://docs.bitrefill.com"
|
|
12
|
-
repository: "https://github.com/bitrefill/
|
|
13
|
+
repository: "https://github.com/bitrefill/agents"
|
|
13
14
|
---
|
|
14
|
-
|
|
15
15
|
# Bitrefill
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
browse <https://www.bitrefill.com> directly."* Don't fall back to
|
|
41
|
-
inventing products.
|
|
42
|
-
|
|
43
|
-
## Happy-path playbook
|
|
44
|
-
|
|
45
|
-
For a typical buy ("a $25 Amazon US gift card with my balance"):
|
|
46
|
-
|
|
47
|
-
1. **`bitrefill_search({ query, country? })`** — find candidate products.
|
|
48
|
-
- "amazon" → `{ query: "amazon", country: "US" }` if the user named a
|
|
49
|
-
country, else just `{ query: "amazon" }`.
|
|
50
|
-
- Returns a list of `{ id, name, country, category }` rows. Pick the one
|
|
51
|
-
that matches the user's intent. If multiple plausible matches, ask the
|
|
52
|
-
user once instead of guessing.
|
|
53
|
-
|
|
54
|
-
2. **`bitrefill_get_product({ product_id })`** — read the `packages` array
|
|
55
|
-
for the right denomination. Each package has `{ id, value, price,
|
|
56
|
-
currency }`. **The `package_id` is what you pass to create_invoice**, NOT
|
|
57
|
-
the bare `value`.
|
|
58
|
-
|
|
59
|
-
3. **`bitrefill_get_balance()`** *(optional)* — when the user said "with my
|
|
60
|
-
balance" or asked "can I afford it", verify the account has enough
|
|
61
|
-
before creating the invoice. Skip when paying with Lightning / on-chain.
|
|
62
|
-
|
|
63
|
-
4. **`bitrefill_create_invoice({ products, payment_method, ... })`** —
|
|
64
|
-
confirmation-gated spend. Choose `payment_method` per the user's request:
|
|
65
|
-
- `"balance"` + `auto_pay: true` — instant settlement from account
|
|
66
|
-
balance. **Default** when the user says "with my balance" or doesn't
|
|
67
|
-
specify and balance is sufficient.
|
|
68
|
-
- `"lightning"` — fastest crypto path. Response carries a BOLT11
|
|
69
|
-
invoice the user pays out-of-band (see step 5b — Spark, if connected,
|
|
70
|
-
pays it directly). **Requires `refund_address`** in case it expires.
|
|
71
|
-
- `"bitcoin"`, `"usdc_base"`, `"usdc_polygon"`, `"usdt_tron"`,
|
|
72
|
-
`"usdt_ethereum"` — same pattern, slower confirmation; also need
|
|
73
|
-
`refund_address`.
|
|
74
|
-
|
|
75
|
-
Line items: `products: [{ product_id, package_id, quantity }]`. Up to 20
|
|
76
|
-
per invoice.
|
|
77
|
-
|
|
78
|
-
5. **Settlement.**
|
|
79
|
-
|
|
80
|
-
a. **`balance` + `auto_pay:true`** — the invoice is usually `complete`
|
|
81
|
-
on creation. Read its `order_id`(s) and skip to step 6.
|
|
82
|
-
|
|
83
|
-
b. **`lightning` with Spark connected** — the response includes a BOLT11
|
|
84
|
-
invoice (commonly under `payment.lightning_invoice`, surface whatever
|
|
85
|
-
field the host returns). Pay it with **`spark_pay_invoice({ invoice:
|
|
86
|
-
<bolt11> })`** — that's one extra confirmation gate, and Spark settles
|
|
87
|
-
it in seconds. (Same pattern if RLN is the user's Lightning layer:
|
|
88
|
-
use `rln_pay_invoice`.) Then `bitrefill_get_invoice` should already
|
|
89
|
-
report `paid` / `complete`.
|
|
90
|
-
|
|
91
|
-
c. **`lightning` or on-chain without an on-device wallet** — relay the
|
|
92
|
-
payment URI to the user and **poll** `bitrefill_get_invoice({
|
|
93
|
-
invoice_id })` until `status:"complete"`. Don't poll faster than
|
|
94
|
-
every ~5s; give up after a few minutes and hand the invoice id back
|
|
95
|
-
to the user to check later.
|
|
96
|
-
|
|
97
|
-
6. **`bitrefill_get_order({ order_id })`** — read `redemption_info`:
|
|
98
|
-
- `.code` — the gift-card code or top-up PIN. The actual product.
|
|
99
|
-
- `.pin` — additional PIN for prepaid cards (often present alongside
|
|
100
|
-
the code).
|
|
101
|
-
- `.link` — brand redemption URL when applicable.
|
|
102
|
-
- `.instructions` — brand-specific redemption steps.
|
|
103
|
-
|
|
104
|
-
Present the code in the chat ONCE, then tell the user to store it and
|
|
105
|
-
redeem ASAP. Don't echo it in subsequent replies, summaries, or memory.
|
|
106
|
-
|
|
107
|
-
## Choosing a payment method
|
|
108
|
-
|
|
109
|
-
| Method | Speed | Blast radius | Use when |
|
|
110
|
-
|---|---|---|---|
|
|
111
|
-
| `balance` + `auto_pay:true` | Instant | Capped at account balance | Default. User pre-funded the account; lowest risk. |
|
|
112
|
-
| `lightning` | Seconds | Whatever's in the user's LN wallet | User asks for "pay with Lightning" or wants no pre-funding. |
|
|
113
|
-
| `bitcoin` | 10–60 min | One on-chain UTXO | User asks for "pay on-chain" or invoice > Lightning capacity. |
|
|
114
|
-
| `usdc_base` (x402) | Seconds | Agent USDC wallet balance | Agent has an x402-capable USDC wallet. |
|
|
115
|
-
| Other on-chain (USDT/USDC variants) | Variable | One UTXO per network | User explicitly requested. |
|
|
116
|
-
|
|
117
|
-
Default to `balance` when available; ask the user before switching to a
|
|
118
|
-
crypto method.
|
|
119
|
-
|
|
120
|
-
## Failure handling
|
|
121
|
-
|
|
122
|
-
Tool errors surface as thrown messages like `"bitrefill bitrefill_create_invoice failed: HTTP 401 ..."`. Relay them as plain English:
|
|
123
|
-
|
|
124
|
-
- **401 Unauthorized** — `BITREFILL_API_KEY` is unset or wrong. Tell the
|
|
125
|
-
user; don't retry.
|
|
126
|
-
- **400 / validation errors** — usually a bad `package_id` or
|
|
127
|
-
`payment_method`. Re-read the product's `packages` array and retry once,
|
|
128
|
-
then stop and ask.
|
|
129
|
-
- **402 Payment Required** (with `balance`) — account underfunded. Show
|
|
130
|
-
the deficit; suggest topping up or switching payment method.
|
|
131
|
-
- **Invoice `expired`** — re-create the invoice; an old quote isn't
|
|
132
|
-
reusable.
|
|
133
|
-
|
|
134
|
-
## Reply style
|
|
135
|
-
|
|
136
|
-
- Show the candidate product list as a short bulleted list (≤5 rows).
|
|
137
|
-
- Before the spend, summarize in one line:
|
|
138
|
-
`Buying: 1× Amazon US $25 — total $25.00 USD, paying with balance. Confirm?`
|
|
139
|
-
- After settlement: one line on success, then the redemption details on a
|
|
140
|
-
separate line so the user can copy the code.
|
|
141
|
-
- After delivering the code, suggest redeeming ASAP and do NOT repeat the
|
|
142
|
-
code in later turns.
|
|
143
|
-
|
|
144
|
-
## References (deep-dive, on demand)
|
|
145
|
-
|
|
146
|
-
The references below cover paths and host hardening — they're for hosts
|
|
147
|
-
that **don't** have the `bitrefill_*` tools wired (browser-only,
|
|
148
|
-
MCP-capable client, npm CLI, raw REST). When the tools above are
|
|
149
|
-
available, you don't need to read them.
|
|
150
|
-
|
|
151
|
-
| File | When |
|
|
152
|
-
|------|------|
|
|
153
|
-
| [api.md](references/api.md) | Mapping the contract tools back to raw REST endpoints. |
|
|
154
|
-
| [mcp.md](references/mcp.md) | Host has the Bitrefill remote MCP wired instead of the contract. |
|
|
155
|
-
| [cli.md](references/cli.md) | `@bitrefill/cli` npm path (auth-bound). |
|
|
156
|
-
| [cli-headless-auth.md](references/cli-headless-auth.md) | Magic-link auth via an agent inbox. |
|
|
157
|
-
| [browse.md](references/browse.md) | Browser-only hosts. |
|
|
158
|
-
| [host-openclaw.md](references/host-openclaw.md) | OpenClaw-specific path. |
|
|
159
|
-
| [capability-matrix.md](references/capability-matrix.md) | Per-client cheat sheet. |
|
|
160
|
-
| [safeguards.md](references/safeguards.md) | Spending policy + per-host hardening. |
|
|
161
|
-
| [troubleshooting.md](references/troubleshooting.md) | Common errors. |
|
|
162
|
-
|
|
163
|
-
## Source of truth
|
|
164
|
-
|
|
165
|
-
Skill describes the contract + playbook. For exhaustive enums (countries,
|
|
166
|
-
payment methods, full endpoint list), see <https://docs.bitrefill.com>.
|
|
17
|
+
Product and package ids come from `bitrefill_search` and
|
|
18
|
+
`bitrefill_get_product` in this turn; never invent them.
|
|
19
|
+
|
|
20
|
+
## Do
|
|
21
|
+
1. `bitrefill_search` (`query`, optional `country`); if several products match, ask once.
|
|
22
|
+
2. `bitrefill_get_product` (`product_id`); pick the package whose `value` matches
|
|
23
|
+
and use its `id` as `package_id`.
|
|
24
|
+
3. Show product, value, total price and payment method, then
|
|
25
|
+
`bitrefill_create_invoice` (confirm-gated):
|
|
26
|
+
- default `payment_method: "balance"` with `auto_pay: true` (check
|
|
27
|
+
`bitrefill_get_balance` first);
|
|
28
|
+
- `"lightning"` needs `refund_address`; pay the returned BOLT11 with
|
|
29
|
+
`spark_pay_invoice` or `rln_pay_invoice`.
|
|
30
|
+
4. Poll `bitrefill_get_invoice` until `complete`, then `bitrefill_get_order`.
|
|
31
|
+
Show `redemption_info.code` once and never repeat it.
|
|
32
|
+
- 401 means the API key is missing or wrong: say so and stop.
|
|
33
|
+
|
|
34
|
+
## Examples
|
|
35
|
+
- "A $25 Amazon US gift card" → `bitrefill_search {"query":"amazon","country":"US"}`
|
|
36
|
+
- "Show the packages" → `bitrefill_get_product {"product_id":"amazon-us"}`
|
|
37
|
+
- "Buy it with my balance" → `bitrefill_create_invoice {"products":[{"product_id":"amazon-us","package_id":"<package id>","quantity":1}],"payment_method":"balance","auto_pay":true}`
|
|
38
|
+
|
|
39
|
+
Hosts without these tools (remote MCP, CLI, browser): see `references/`.
|
|
@@ -1,59 +1,38 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: channel-manager
|
|
3
|
-
description: "
|
|
4
|
-
tools: rln_get_node_info, rln_list_channels, rln_get_balances,
|
|
5
|
-
|
|
3
|
+
description: "Lightning channels and liquidity for the RGB Lightning Node: node health, channel audit, inbound/outbound balance, buying a channel or asset channel from the KaleidoSwap LSP, opening and closing channels. Runs the scheduled heartbeat."
|
|
4
|
+
tools: rln_get_node_info, rln_list_channels, rln_get_balances, rln_refresh_transfers, rln_connect_peer, rln_open_channel, rln_close_channel, rln_get_channel_id, rln_pay_invoice, kaleidoswap_lsp_get_info, kaleidoswap_lsp_estimate_fees, kaleidoswap_lsp_create_order, kaleidoswap_lsp_get_order, kaleidoswap_lsp_quote_asset_channel, kaleidoswap_lsp_create_asset_channel
|
|
5
|
+
requires-tools: rln_list_channels
|
|
6
|
+
triggers: channel, channels, liquidity, inbound, outbound, lsp, lsps1, capacity, rebalance channel, can't receive, open channel, close channel, channel order, heartbeat, health, stuck
|
|
6
7
|
metadata:
|
|
7
8
|
author: kaleidoswap
|
|
8
|
-
version: "0.
|
|
9
|
+
version: "0.2.0"
|
|
9
10
|
---
|
|
10
|
-
|
|
11
11
|
# Channel manager
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
`
|
|
20
|
-
-
|
|
21
|
-
|
|
22
|
-
`
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
1. `kaleidoswap_lsp_get_info` — confirm the LSP is reachable + its limits.
|
|
40
|
-
2. `kaleidoswap_lsp_estimate_fees` — show the fee for the size you'd buy.
|
|
41
|
-
3. `kaleidoswap_lsp_create_order` (spend-gated) — create the order; it returns an
|
|
42
|
-
invoice/onchain address. Pay via `rln_pay_invoice` only after approval.
|
|
43
|
-
|
|
44
|
-
## Scheduled (background) runs
|
|
45
|
-
|
|
46
|
-
When run by the `heartbeat` loop, return STRICT JSON only:
|
|
47
|
-
|
|
48
|
-
```
|
|
49
|
-
{"task":"heartbeat","timestamp":"<ISO8601>","action":"ok|flush|buy_capacity|alert","dry_run":<bool>,"reason":"<why>","details":{"channels":<n>,"outbound_sat":<n>,"inbound_sat":<n>,"pending_transfers":<n>}}
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
Use `ok` when nothing needs doing, `alert` when a human should look.
|
|
53
|
-
|
|
54
|
-
## Don'ts
|
|
55
|
-
|
|
56
|
-
- Don't buy capacity that isn't needed, or when within the liquidity threshold.
|
|
57
|
-
- Don't pay an LSP invoice when `dry_run` is true.
|
|
58
|
-
- Don't invent channel ids, balances, or fees — read them from tools.
|
|
59
|
-
- Don't breach the BTC reserve to open a channel.
|
|
13
|
+
Read state first: `rln_get_node_info`, `rln_list_channels`, `rln_get_balances`.
|
|
14
|
+
Outbound = what the node can send; inbound = what it can receive. Report
|
|
15
|
+
numbers from this turn's results only.
|
|
16
|
+
|
|
17
|
+
## Do
|
|
18
|
+
- Health: count usable channels, total outbound vs inbound, channels with
|
|
19
|
+
`is_usable: false`; `rln_refresh_transfers {}` flushes pending RGB transfers.
|
|
20
|
+
- Can't receive → buy inbound: `kaleidoswap_lsp_get_info` (limits and
|
|
21
|
+
`lsp_connection_url`), `rln_connect_peer`, `kaleidoswap_lsp_estimate_fees`
|
|
22
|
+
(show `total_fee`), then `kaleidoswap_lsp_create_order` with `client_pubkey`
|
|
23
|
+
from `rln_get_node_info`, pay its invoice with `rln_pay_invoice`, poll
|
|
24
|
+
`kaleidoswap_lsp_get_order` until `COMPLETED`.
|
|
25
|
+
- Wants an asset (USDT/XAUT) but has no channel →
|
|
26
|
+
`kaleidoswap_lsp_quote_asset_channel` then
|
|
27
|
+
`kaleidoswap_lsp_create_asset_channel` with the fresh `rfq_id`.
|
|
28
|
+
- Can't send → open a channel with spare on-chain BTC (`rln_open_channel`).
|
|
29
|
+
- Every order, open, close and payment is confirm-gated; recommend first,
|
|
30
|
+
execute only on an explicit request. With `dry_run` true, describe only.
|
|
31
|
+
- Heartbeat runs: `action` is `ok`, `flush`, `buy_capacity` or `alert`.
|
|
32
|
+
|
|
33
|
+
## Examples
|
|
34
|
+
- "How healthy is my node?" → `rln_list_channels {}`
|
|
35
|
+
- "Fee for 500k sats inbound?" → `kaleidoswap_lsp_estimate_fees {"lsp_balance_sat":500000,"client_balance_sat":0,"channel_expiry_blocks":4320}`
|
|
36
|
+
- "Buy 500k inbound" → `rln_get_node_info {}` then `kaleidoswap_lsp_create_order {"client_pubkey":"<pubkey>","lsp_balance_sat":500000,"client_balance_sat":0,"channel_expiry_blocks":4320}`
|
|
37
|
+
- "A channel holding 100 USDT" → `kaleidoswap_lsp_quote_asset_channel {"asset":"USDT","asset_amount":100}`
|
|
38
|
+
- "Did order 7a1b open?" → `kaleidoswap_lsp_get_order {"order_id":"7a1b"}`
|