clawpowers 1.1.3 → 2.0.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/CHANGELOG.md +94 -0
- package/LICENSE +44 -0
- package/README.md +202 -384
- package/SECURITY.md +72 -0
- package/dist/index.d.ts +844 -0
- package/dist/index.js +2536 -0
- package/dist/index.js.map +1 -0
- package/package.json +52 -42
- package/.claude-plugin/manifest.json +0 -19
- package/.codex/INSTALL.md +0 -36
- package/.cursor-plugin/manifest.json +0 -21
- package/.opencode/INSTALL.md +0 -52
- package/ARCHITECTURE.md +0 -69
- package/bin/clawpowers.js +0 -625
- package/bin/clawpowers.sh +0 -91
- package/docs/demo/clawpowers-demo.cast +0 -197
- package/docs/demo/clawpowers-demo.gif +0 -0
- package/docs/launch-images/25-skills-breakdown.jpg +0 -0
- package/docs/launch-images/clawpowers-vs-superpowers.jpg +0 -0
- package/docs/launch-images/economic-code-optimization.jpg +0 -0
- package/docs/launch-images/native-vs-bridge-2.jpg +0 -0
- package/docs/launch-images/native-vs-bridge.jpg +0 -0
- package/docs/launch-images/post1-hero-lobster.jpg +0 -0
- package/docs/launch-images/post2-dashboard.jpg +0 -0
- package/docs/launch-images/post3-superpowers.jpg +0 -0
- package/docs/launch-images/post4-before-after.jpg +0 -0
- package/docs/launch-images/post5-install-now.jpg +0 -0
- package/docs/launch-images/ultimate-stack.jpg +0 -0
- package/docs/launch-posts.md +0 -76
- package/docs/quickstart-first-transaction.md +0 -204
- package/gemini-extension.json +0 -32
- package/hooks/session-start +0 -205
- package/hooks/session-start.cmd +0 -43
- package/hooks/session-start.js +0 -163
- package/runtime/demo/README.md +0 -78
- package/runtime/demo/x402-mock-server.js +0 -230
- package/runtime/feedback/analyze.js +0 -621
- package/runtime/feedback/analyze.sh +0 -546
- package/runtime/init.js +0 -210
- package/runtime/init.sh +0 -178
- package/runtime/metrics/collector.js +0 -361
- package/runtime/metrics/collector.sh +0 -308
- package/runtime/payments/ledger.js +0 -305
- package/runtime/payments/ledger.sh +0 -262
- package/runtime/payments/pipeline.js +0 -459
- package/runtime/persistence/store.js +0 -433
- package/runtime/persistence/store.sh +0 -303
- package/skill.json +0 -106
- package/skills/agent-bounties/SKILL.md +0 -553
- package/skills/agent-payments/SKILL.md +0 -479
- package/skills/brainstorming/SKILL.md +0 -233
- package/skills/content-pipeline/SKILL.md +0 -282
- package/skills/cross-project-knowledge/SKILL.md +0 -345
- package/skills/dispatching-parallel-agents/SKILL.md +0 -305
- package/skills/economic-code-optimization/SKILL.md +0 -265
- package/skills/executing-plans/SKILL.md +0 -255
- package/skills/finishing-a-development-branch/SKILL.md +0 -260
- package/skills/formal-verification-lite/SKILL.md +0 -441
- package/skills/learn-how-to-learn/SKILL.md +0 -235
- package/skills/market-intelligence/SKILL.md +0 -323
- package/skills/meta-skill-evolution/SKILL.md +0 -325
- package/skills/prospecting/SKILL.md +0 -454
- package/skills/receiving-code-review/SKILL.md +0 -225
- package/skills/requesting-code-review/SKILL.md +0 -206
- package/skills/security-audit/SKILL.md +0 -353
- package/skills/self-healing-code/SKILL.md +0 -369
- package/skills/subagent-driven-development/SKILL.md +0 -244
- package/skills/systematic-debugging/SKILL.md +0 -355
- package/skills/test-driven-development/SKILL.md +0 -416
- package/skills/using-clawpowers/SKILL.md +0 -160
- package/skills/using-git-worktrees/SKILL.md +0 -261
- package/skills/verification-before-completion/SKILL.md +0 -254
- package/skills/writing-plans/SKILL.md +0 -276
- package/skills/writing-skills/SKILL.md +0 -260
package/bin/clawpowers.sh
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env bash
|
|
2
|
-
# bin/clawpowers.sh — Bash CLI entry point for ClawPowers
|
|
3
|
-
#
|
|
4
|
-
# Provides the same commands as clawpowers.js for Unix environments that
|
|
5
|
-
# prefer bash over Node.js. The JS version (clawpowers.js) is the primary
|
|
6
|
-
# cross-platform entry point; this script is a convenience wrapper.
|
|
7
|
-
#
|
|
8
|
-
# Commands: init, status, update, inject
|
|
9
|
-
# Requires: bash, git (optional, for update command)
|
|
10
|
-
set -euo pipefail
|
|
11
|
-
|
|
12
|
-
# Runtime data directory — override with CLAWPOWERS_DIR env var for custom locations
|
|
13
|
-
CLAWPOWERS_DIR="${CLAWPOWERS_DIR:-$HOME/.clawpowers}"
|
|
14
|
-
|
|
15
|
-
# Resolve the repo root from this script's location (bin/ → repo root)
|
|
16
|
-
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
17
|
-
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
18
|
-
|
|
19
|
-
## === Usage ===
|
|
20
|
-
|
|
21
|
-
usage() {
|
|
22
|
-
cat <<EOF
|
|
23
|
-
Usage: clawpowers <command>
|
|
24
|
-
|
|
25
|
-
Commands:
|
|
26
|
-
init Initialize ClawPowers runtime in ~/.clawpowers/
|
|
27
|
-
status Show runtime health and skill metrics summary
|
|
28
|
-
update Pull latest skill definitions from repo
|
|
29
|
-
inject Inject using-clawpowers skill into current session context
|
|
30
|
-
|
|
31
|
-
Examples:
|
|
32
|
-
npx clawpowers init
|
|
33
|
-
npx clawpowers status
|
|
34
|
-
EOF
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
## === Command Implementations ===
|
|
38
|
-
|
|
39
|
-
# init — Set up the runtime directory structure
|
|
40
|
-
# Delegates to runtime/init.sh which is idempotent (safe to run multiple times)
|
|
41
|
-
cmd_init() {
|
|
42
|
-
echo "Initializing ClawPowers runtime..."
|
|
43
|
-
bash "$REPO_ROOT/runtime/init.sh"
|
|
44
|
-
echo "Done. ClawPowers runtime ready at $CLAWPOWERS_DIR"
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
# status — Show RSI feedback analysis and runtime health
|
|
48
|
-
# Requires the runtime to be initialized; exits 1 with a helpful message if not
|
|
49
|
-
cmd_status() {
|
|
50
|
-
if [[ ! -d "$CLAWPOWERS_DIR" ]]; then
|
|
51
|
-
echo "Runtime not initialized. Run: npx clawpowers init"
|
|
52
|
-
exit 1
|
|
53
|
-
fi
|
|
54
|
-
bash "$REPO_ROOT/runtime/feedback/analyze.sh"
|
|
55
|
-
}
|
|
56
|
-
|
|
57
|
-
# update — Pull the latest skill definitions from the GitHub repository
|
|
58
|
-
# Uses git fast-forward only (--ff-only) to avoid overwriting local modifications.
|
|
59
|
-
# Falls back gracefully when git is not installed.
|
|
60
|
-
cmd_update() {
|
|
61
|
-
local repo_url="https://github.com/up2itnow0822/clawpowers"
|
|
62
|
-
if command -v git >/dev/null 2>&1; then
|
|
63
|
-
echo "Pulling latest skill definitions..."
|
|
64
|
-
# Redirect stderr so git verbose output doesn't clutter the terminal
|
|
65
|
-
git -C "$REPO_ROOT" pull --ff-only origin main 2>/dev/null || \
|
|
66
|
-
echo "Warning: could not auto-update. Visit $repo_url for latest."
|
|
67
|
-
else
|
|
68
|
-
echo "git not found. Visit $repo_url to update manually."
|
|
69
|
-
fi
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
# inject — Run the session-start hook to push the using-clawpowers skill
|
|
73
|
-
# into the current AI platform's context window.
|
|
74
|
-
# Calls the bash hook (hooks/session-start) which auto-detects the platform.
|
|
75
|
-
cmd_inject() {
|
|
76
|
-
bash "$REPO_ROOT/hooks/session-start"
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
## === Main Dispatch ===
|
|
80
|
-
|
|
81
|
-
# Route the first positional argument to the appropriate command function.
|
|
82
|
-
# Unknown commands print usage and exit 1 so shell scripts can detect errors.
|
|
83
|
-
case "${1:-}" in
|
|
84
|
-
init) cmd_init ;;
|
|
85
|
-
status) cmd_status ;;
|
|
86
|
-
update) cmd_update ;;
|
|
87
|
-
inject) cmd_inject ;;
|
|
88
|
-
help|-h|--help) usage ;;
|
|
89
|
-
"") usage; exit 1 ;;
|
|
90
|
-
*) echo "Unknown command: $1"; usage; exit 1 ;;
|
|
91
|
-
esac
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
{"version":3,"term":{"cols":80,"rows":24},"timestamp":1774167514,"command":"bash /tmp/clawpowers-demo.sh","title":"ClawPowers — Runtime Skills Framework Demo"}
|
|
2
|
-
[0.213, "o", "TERM environment variable not set.\r\n🦞 ClawPowers Demo — The skills framework that actually does something\r\n==================================================================\r\n\r\n"]
|
|
3
|
-
[2.047, "o", "━━━ Step 1: Install from npm ━━━\r\n$ npx clawpowers init\r\n"]
|
|
4
|
-
[1.776, "o", "\\"]
|
|
5
|
-
[0.131, "o", "\u001b[1G"]
|
|
6
|
-
[0.000, "o", "\u001b[0K"]
|
|
7
|
-
[0.000, "o", "|"]
|
|
8
|
-
[0.131, "o", "\u001b[1G\u001b[0K"]
|
|
9
|
-
[0.000, "o", "/"]
|
|
10
|
-
[0.132, "o", "\u001b[1G\u001b[0K-"]
|
|
11
|
-
[0.130, "o", "\u001b[1G\u001b[0K\\"]
|
|
12
|
-
[0.254, "o", "\u001b[1G\u001b[0K|"]
|
|
13
|
-
[0.087, "o", "\u001b[1G\u001b[0K/"]
|
|
14
|
-
[0.132, "o", "\u001b[1G\u001b[0K-"]
|
|
15
|
-
[0.129, "o", "\u001b[1G\u001b[0K\\"]
|
|
16
|
-
[0.162, "o", "\u001b[1G\u001b[0K|"]
|
|
17
|
-
[0.130, "o", "\u001b[1G\u001b[0K/"]
|
|
18
|
-
[0.138, "o", "\u001b[1G\u001b[0K-"]
|
|
19
|
-
[0.132, "o", "\u001b[1G\u001b[0K\\"]
|
|
20
|
-
[0.130, "o", "\u001b[1G\u001b[0K|"]
|
|
21
|
-
[0.132, "o", "\u001b[1G\u001b[0K/"]
|
|
22
|
-
[0.132, "o", "\u001b[1G\u001b[0K-"]
|
|
23
|
-
[0.036, "o", "\u001b[1G\u001b[0K"]
|
|
24
|
-
[0.886, "o", "Initializing ClawPowers runtime...\r\n"]
|
|
25
|
-
[0.004, "o", "ClawPowers runtime initialized at /Users/billwilson/.clawpowers\r\n Directories created: 7\r\n"]
|
|
26
|
-
[0.000, "o", " Version: 1.0.0\r\n"]
|
|
27
|
-
[0.003, "o", "\\"]
|
|
28
|
-
[0.002, "o", "\u001b[1G\u001b[0K"]
|
|
29
|
-
[0.007, "o", "\r\n"]
|
|
30
|
-
[2.032, "o", "━━━ Step 2: Check status ━━━\r\n$ npx clawpowers status\r\n"]
|
|
31
|
-
[1.507, "o", "\\"]
|
|
32
|
-
[0.131, "o", "\u001b[1G"]
|
|
33
|
-
[0.000, "o", "\u001b[0K|"]
|
|
34
|
-
[0.130, "o", "\u001b[1G\u001b[0K/"]
|
|
35
|
-
[0.149, "o", "\u001b[1G\u001b[0K-"]
|
|
36
|
-
[0.133, "o", "\u001b[1G\u001b[0K\\"]
|
|
37
|
-
[0.129, "o", "\u001b[1G\u001b[0K|"]
|
|
38
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
39
|
-
[0.074, "o", "ClawPowers RSI Feedback Analysis\r\n"]
|
|
40
|
-
[0.000, "o", "=================================\r\n"]
|
|
41
|
-
[0.001, "o", "Generated: 2026-03-22T08:18:45Z\r\n\r\n"]
|
|
42
|
-
[0.000, "o", "No metrics found. Run some skills and record outcomes with:\r\n node runtime/metrics/collector.js record --skill <name> --outcome success\r\n"]
|
|
43
|
-
[0.003, "o", "\\"]
|
|
44
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
45
|
-
[0.006, "o", "\r\n"]
|
|
46
|
-
[2.012, "o", "━━━ Step 3: Cross-session persistence ━━━\r\n"]
|
|
47
|
-
[0.000, "o", "Simulating a debugging session that persists across restarts...\r\n\r\n"]
|
|
48
|
-
[1.074, "o", "$ npx clawpowers store set \"debug:api-500:observation\" \"POST returns 500, GET works fine\"\r\n"]
|
|
49
|
-
[1.720, "o", "\\"]
|
|
50
|
-
[0.131, "o", "\u001b[1G\u001b[0K"]
|
|
51
|
-
[0.000, "o", "|"]
|
|
52
|
-
[0.130, "o", "\u001b[1G\u001b[0K/"]
|
|
53
|
-
[0.130, "o", "\u001b[1G"]
|
|
54
|
-
[0.000, "o", "\u001b[0K"]
|
|
55
|
-
[0.000, "o", "-"]
|
|
56
|
-
[0.129, "o", "\u001b[1G\u001b[0K\\"]
|
|
57
|
-
[0.132, "o", "\u001b[1G\u001b[0K|"]
|
|
58
|
-
[0.129, "o", "\u001b[1G\u001b[0K"]
|
|
59
|
-
[0.100, "o", "\\"]
|
|
60
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
61
|
-
[0.520, "o", "$ npx clawpowers store set \"debug:api-500:hypothesis1\" \"Missing body-parser middleware\"\r\n"]
|
|
62
|
-
[0.363, "o", "\\"]
|
|
63
|
-
[0.131, "o", "\u001b[1G\u001b[0K|"]
|
|
64
|
-
[0.140, "o", "\u001b[1G\u001b[0K/"]
|
|
65
|
-
[0.151, "o", "\u001b[1G"]
|
|
66
|
-
[0.000, "o", "\u001b[0K-"]
|
|
67
|
-
[0.129, "o", "\u001b[1G\u001b[0K\\"]
|
|
68
|
-
[0.075, "o", "\u001b[1G\u001b[0K"]
|
|
69
|
-
[0.082, "o", "\\"]
|
|
70
|
-
[0.001, "o", "\u001b[1G"]
|
|
71
|
-
[0.000, "o", "\u001b[0K"]
|
|
72
|
-
[0.519, "o", "$ npx clawpowers store set \"debug:api-500:h1_status\" \"CONFIRMED\"\r\n"]
|
|
73
|
-
[0.337, "o", "\\"]
|
|
74
|
-
[0.131, "o", "\u001b[1G\u001b[0K|"]
|
|
75
|
-
[0.131, "o", "\u001b[1G\u001b[0K/"]
|
|
76
|
-
[0.131, "o", "\u001b[1G\u001b[0K"]
|
|
77
|
-
[0.000, "o", "-"]
|
|
78
|
-
[0.129, "o", "\u001b[1G\u001b[0K\\"]
|
|
79
|
-
[0.127, "o", "\u001b[1G\u001b[0K"]
|
|
80
|
-
[0.080, "o", "\\"]
|
|
81
|
-
[0.000, "o", "\u001b[1G\u001b[0K"]
|
|
82
|
-
[0.005, "o", "\r\n"]
|
|
83
|
-
[1.072, "o", "Next session starts... your agent remembers everything:\r\n$ npx clawpowers store list \"debug:api-500:\"\r\n"]
|
|
84
|
-
[0.362, "o", "\\"]
|
|
85
|
-
[0.131, "o", "\u001b[1G"]
|
|
86
|
-
[0.000, "o", "\u001b[0K|"]
|
|
87
|
-
[0.130, "o", "\u001b[1G\u001b[0K/"]
|
|
88
|
-
[0.130, "o", "\u001b[1G\u001b[0K"]
|
|
89
|
-
[0.000, "o", "-"]
|
|
90
|
-
[0.145, "o", "\u001b[1G\u001b[0K\\"]
|
|
91
|
-
[0.138, "o", "\u001b[1G\u001b[0K|"]
|
|
92
|
-
[0.026, "o", "\u001b[1G\u001b[0K"]
|
|
93
|
-
[0.088, "o", "debug:api-500:h1_status\r\n"]
|
|
94
|
-
[0.000, "o", "debug:api-500:hypothesis1\r\ndebug:api-500:observation\r\n"]
|
|
95
|
-
[0.003, "o", "\\"]
|
|
96
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
97
|
-
[0.005, "o", "\r\n"]
|
|
98
|
-
[2.074, "o", "━━━ Step 4: Outcome tracking ━━━\r\n"]
|
|
99
|
-
[0.000, "o", "$ npx clawpowers metrics record --skill systematic-debugging --outcome success --duration 180 --notes \"Root cause: missing express.json()\"\r\n"]
|
|
100
|
-
[0.358, "o", "\\"]
|
|
101
|
-
[0.131, "o", "\u001b[1G"]
|
|
102
|
-
[0.000, "o", "\u001b[0K"]
|
|
103
|
-
[0.001, "o", "|"]
|
|
104
|
-
[0.128, "o", "\u001b[1G"]
|
|
105
|
-
[0.000, "o", "\u001b[0K/"]
|
|
106
|
-
[0.162, "o", "\u001b[1G\u001b[0K-"]
|
|
107
|
-
[0.153, "o", "\u001b[1G\u001b[0K\\"]
|
|
108
|
-
[0.129, "o", "\u001b[1G\u001b[0K|"]
|
|
109
|
-
[0.131, "o", "\u001b[1G\u001b[0K/"]
|
|
110
|
-
[0.120, "o", "\u001b[1G\u001b[0K"]
|
|
111
|
-
[0.102, "o", "Recorded: systematic-debugging → success (2026-03.jsonl)\r\n"]
|
|
112
|
-
[0.002, "o", "\\"]
|
|
113
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
114
|
-
[0.513, "o", "$ npx clawpowers metrics record --skill test-driven-development --outcome success --duration 120 --notes \"Added 3 tests for POST endpoint\"\r\n"]
|
|
115
|
-
[0.507, "o", "\\"]
|
|
116
|
-
[0.131, "o", "\u001b[1G"]
|
|
117
|
-
[0.000, "o", "\u001b[0K|"]
|
|
118
|
-
[0.130, "o", "\u001b[1G\u001b[0K/"]
|
|
119
|
-
[0.150, "o", "\u001b[1G\u001b[0K-"]
|
|
120
|
-
[0.129, "o", "\u001b[1G\u001b[0K\\"]
|
|
121
|
-
[0.111, "o", "\u001b[1G\u001b[0K"]
|
|
122
|
-
[0.081, "o", "Recorded: test-driven-development → success (2026-03.jsonl)\r\n"]
|
|
123
|
-
[0.003, "o", "\\"]
|
|
124
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
125
|
-
[0.560, "o", "$ npx clawpowers metrics record --skill agent-payments --outcome failure --duration 5 --notes \"x402 API returned 503\"\r\n"]
|
|
126
|
-
[0.357, "o", "\\"]
|
|
127
|
-
[0.131, "o", "\u001b[1G"]
|
|
128
|
-
[0.000, "o", "\u001b[0K|"]
|
|
129
|
-
[0.131, "o", "\u001b[1G\u001b[0K/"]
|
|
130
|
-
[0.139, "o", "\u001b[1G\u001b[0K"]
|
|
131
|
-
[0.000, "o", "-"]
|
|
132
|
-
[0.136, "o", "\u001b[1G\u001b[0K\\"]
|
|
133
|
-
[0.040, "o", "\u001b[1G\u001b[0K"]
|
|
134
|
-
[0.088, "o", "Recorded: agent-payments → failure (2026-03.jsonl)\r\n"]
|
|
135
|
-
[0.002, "o", "\\"]
|
|
136
|
-
[0.001, "o", "\u001b[1G"]
|
|
137
|
-
[0.000, "o", "\u001b[0K"]
|
|
138
|
-
[0.006, "o", "\r\n"]
|
|
139
|
-
[1.019, "o", "$ npx clawpowers metrics summary\r\n"]
|
|
140
|
-
[0.352, "o", "\\"]
|
|
141
|
-
[0.132, "o", "\u001b[1G"]
|
|
142
|
-
[0.000, "o", "\u001b[0K|"]
|
|
143
|
-
[0.129, "o", "\u001b[1G\u001b[0K/"]
|
|
144
|
-
[0.131, "o", "\u001b[1G\u001b[0K-"]
|
|
145
|
-
[0.131, "o", "\u001b[1G\u001b[0K\\"]
|
|
146
|
-
[0.011, "o", "\u001b[1G\u001b[0K"]
|
|
147
|
-
[0.076, "o", "Total executions: 3\r\n"]
|
|
148
|
-
[0.000, "o", " Success: 2 (67%)\r\n Failure: 1 (33%)\r\n Partial: 0 (0%)\r\n"]
|
|
149
|
-
[0.000, "o", "Avg duration: 102s\r\n"]
|
|
150
|
-
[0.000, "o", "\r\nSkill breakdown:\r\n agent-payments: 1\r\n"]
|
|
151
|
-
[0.000, "o", " systematic-debugging: 1\r\n"]
|
|
152
|
-
[0.000, "o", " test-driven-development: 1\r\n"]
|
|
153
|
-
[0.002, "o", "\\"]
|
|
154
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
155
|
-
[0.006, "o", "\r\n"]
|
|
156
|
-
[2.078, "o", "━━━ Step 5: Self-improvement analysis (RSI) ━━━\r\n$ npx clawpowers analyze\r\n"]
|
|
157
|
-
[0.348, "o", "\\"]
|
|
158
|
-
[0.135, "o", "\u001b[1G"]
|
|
159
|
-
[0.000, "o", "\u001b[0K"]
|
|
160
|
-
[0.000, "o", "|"]
|
|
161
|
-
[0.147, "o", "\u001b[1G\u001b[0K/"]
|
|
162
|
-
[0.132, "o", "\u001b[1G\u001b[0K-"]
|
|
163
|
-
[0.104, "o", "\u001b[1G\u001b[0K"]
|
|
164
|
-
[0.078, "o", "ClawPowers RSI Feedback Analysis\r\n"]
|
|
165
|
-
[0.000, "o", "=================================\r\n"]
|
|
166
|
-
[0.001, "o", "Generated: 2026-03-22T08:19:08Z\r\n\r\n"]
|
|
167
|
-
[0.000, "o", "## Per-Skill Analysis\r\n\r\n"]
|
|
168
|
-
[0.000, "o", "### agent-payments\r\n Executions: 1 | Success rate: 0% | Avg duration: 5s\r\n"]
|
|
169
|
-
[0.001, "o", " Not enough data (1 executions). Need 3+ to analyze.\r\n"]
|
|
170
|
-
[0.000, "o", "\r\n"]
|
|
171
|
-
[0.000, "o", "### systematic-debugging\r\n Executions: 1 | Success rate: 100% | Avg duration: 180s\r\n Not enough data (1 executions). Need 3+ to analyze.\r\n"]
|
|
172
|
-
[0.000, "o", "\r\n"]
|
|
173
|
-
[0.000, "o", "### test-driven-development\r\n Executions: 1 | Success rate: 100% | Avg duration: 120s\r\n Not enough data (1 executions). Need 3+ to analyze.\r\n"]
|
|
174
|
-
[0.000, "o", "\r\n## Overall Summary\r\n Total executions: 3\r\n Overall success rate: 67%\r\n"]
|
|
175
|
-
[0.000, "o", "\r\n## Runtime State\r\n State keys stored: 3\r\n Metrics files: 1\r\n"]
|
|
176
|
-
[0.003, "o", "\\"]
|
|
177
|
-
[0.001, "o", "\u001b[1G\u001b[0K"]
|
|
178
|
-
[0.006, "o", "\r\n"]
|
|
179
|
-
[2.015, "o", "━━━ Step 6: Path traversal protection ━━━\r\n"]
|
|
180
|
-
[0.000, "o", "$ npx clawpowers store set \"../../../etc/passwd\" \"hacked\"\r\n"]
|
|
181
|
-
[0.373, "o", "\\"]
|
|
182
|
-
[0.132, "o", "\u001b[1G"]
|
|
183
|
-
[0.000, "o", "\u001b[0K"]
|
|
184
|
-
[0.000, "o", "|"]
|
|
185
|
-
[0.131, "o", "\u001b[1G\u001b[0K/"]
|
|
186
|
-
[0.141, "o", "\u001b[1G"]
|
|
187
|
-
[0.000, "o", "\u001b[0K"]
|
|
188
|
-
[0.000, "o", "-"]
|
|
189
|
-
[0.130, "o", "\u001b[1G\u001b[0K\\"]
|
|
190
|
-
[0.136, "o", "\u001b[1G\u001b[0K|"]
|
|
191
|
-
[0.117, "o", "\u001b[1G\u001b[0K"]
|
|
192
|
-
[0.082, "o", "Error: key cannot contain '/' or '\\': ../../../etc/passwd\r\n"]
|
|
193
|
-
[0.001, "o", "\\"]
|
|
194
|
-
[0.002, "o", "\u001b[1G\u001b[0K"]
|
|
195
|
-
[0.005, "o", "\r\n✅ Blocked. Your agent can't escape the sandbox.\r\n\r\n"]
|
|
196
|
-
[2.046, "o", "==================================================================\r\n🦞 20 skills • Persistent memory • Self-improvement • Agent payments\r\n npm install clawpowers | https://github.com/up2itnow0822/clawpowers\r\n==================================================================\r\n"]
|
|
197
|
-
[3.081, "x", "0"]
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/docs/launch-posts.md
DELETED
|
@@ -1,76 +0,0 @@
|
|
|
1
|
-
# ClawPowers Launch Posts — March 22, 2026
|
|
2
|
-
|
|
3
|
-
## Post 1 (4:00 AM CST) — Image: "Ready to Supercharge" (lobster crowd)
|
|
4
|
-
|
|
5
|
-
Your coding agent debugs the same bug every Monday because it can't remember what worked last Friday.
|
|
6
|
-
|
|
7
|
-
ClawPowers fixes that. 24 skills with persistent memory, outcome tracking, and self-improvement loops. Your agent learns from every session - not just follows instructions.
|
|
8
|
-
|
|
9
|
-
One command: npx clawpowers init
|
|
10
|
-
|
|
11
|
-
Works on Claude Code, Cursor, Codex, OpenCode, Gemini CLI. Zero dependencies.
|
|
12
|
-
|
|
13
|
-
github.com/up2itnow0822/clawpowers
|
|
14
|
-
|
|
15
|
-
---
|
|
16
|
-
|
|
17
|
-
## Post 2 (5:00 AM CST) — Image: "ClawPowers in Action" (dashboard/payments UI)
|
|
18
|
-
|
|
19
|
-
Most agent skills tell your agent what to do.
|
|
20
|
-
|
|
21
|
-
ClawPowers skills actually do things - run security scans, execute trades, pay for APIs, and persist state across sessions.
|
|
22
|
-
|
|
23
|
-
Your agent spent 4 hours debugging a CORS issue last week? With ClawPowers, it records the fix, tracks the outcome, and next time it encounters the same stack trace - it already knows the answer.
|
|
24
|
-
|
|
25
|
-
Payments, wallets, markets. All wired up.
|
|
26
|
-
|
|
27
|
-
npx clawpowers init
|
|
28
|
-
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
## Post 3 (6:00 AM CST) — Image: "Superpowers" (4 quadrants - wallets, payments, oracle, trading)
|
|
32
|
-
|
|
33
|
-
What can an agent do with ClawPowers?
|
|
34
|
-
|
|
35
|
-
- Non-custodial wallets with on-chain spending limits
|
|
36
|
-
- Pay for premium APIs autonomously (x402 protocol)
|
|
37
|
-
- Swap tokens across 4 chains via Uniswap V3
|
|
38
|
-
- Bridge USDC cross-chain including Solana
|
|
39
|
-
- On-chain identity and reputation (ERC-8004)
|
|
40
|
-
|
|
41
|
-
Built on the same payment infra merged into NVIDIA's official NeMo Agent Toolkit.
|
|
42
|
-
|
|
43
|
-
Smart-contract enforced limits mean even a compromised agent can't drain your wallet. Period.
|
|
44
|
-
|
|
45
|
-
github.com/up2itnow0822/clawpowers
|
|
46
|
-
|
|
47
|
-
---
|
|
48
|
-
|
|
49
|
-
## Post 4 (7:00 AM CST) — Image: "Before/After" (basic agent vs economic god mode)
|
|
50
|
-
|
|
51
|
-
Before ClawPowers: Your agent follows a checklist. Forgets everything between sessions. Can't pay for anything. Can't learn from mistakes.
|
|
52
|
-
|
|
53
|
-
After: Persistent memory across sessions. Self-improvement from tracked outcomes. Autonomous payments within hard limits. 24 skills that execute, not just instruct.
|
|
54
|
-
|
|
55
|
-
366 tests passing. Zero dependencies. MIT licensed.
|
|
56
|
-
|
|
57
|
-
npx clawpowers init
|
|
58
|
-
|
|
59
|
-
---
|
|
60
|
-
|
|
61
|
-
## Post 5 (8:00 AM CST — MAIN LAUNCH) — Image: "Financial Superpowers" (lobster with lightning)
|
|
62
|
-
|
|
63
|
-
ClawPowers is live.
|
|
64
|
-
|
|
65
|
-
24 skills for coding agents that go beyond static instructions. Persistent memory. Self-improvement loops. And the part nobody else has - autonomous agent payments with smart-contract spending limits.
|
|
66
|
-
|
|
67
|
-
Your agent can pay for APIs, swap tokens, bridge cross-chain, and build on-chain reputation. All within guardrails you set.
|
|
68
|
-
|
|
69
|
-
One install:
|
|
70
|
-
npx clawpowers init
|
|
71
|
-
|
|
72
|
-
Works on Claude Code, Cursor, Codex, OpenCode, Gemini CLI. Windows, macOS, Linux.
|
|
73
|
-
|
|
74
|
-
Built by @AgentEconoemy - the team behind NVIDIA NeMo's official payment integration.
|
|
75
|
-
|
|
76
|
-
github.com/up2itnow0822/clawpowers
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
# 5-Minute First Transaction
|
|
2
|
-
|
|
3
|
-
Get your AI agent sending real (testnet) transactions in under 5 minutes.
|
|
4
|
-
Two paths — pick the one that matches your stack.
|
|
5
|
-
|
|
6
|
-
> **Testnet only.** Both paths use **Base Sepolia** so no real money moves.
|
|
7
|
-
> Switch `CHAIN_NAME=base` when you're ready for mainnet.
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## Prerequisites
|
|
12
|
-
|
|
13
|
-
1. **Testnet wallet** — any EOA private key (generate one with `cast wallet new` from Foundry, or MetaMask)
|
|
14
|
-
2. **Deployed AgentAccountV2** — run `npx clawpowers payments setup` for the interactive wizard
|
|
15
|
-
3. **Base Sepolia ETH (gas)** — free from [https://www.coinbase.com/faucets/base-ethereum-goerli-faucet](https://www.coinbase.com/faucets/base-ethereum-goerli-faucet)
|
|
16
|
-
|
|
17
|
-
---
|
|
18
|
-
|
|
19
|
-
## .env Setup
|
|
20
|
-
|
|
21
|
-
Create a `.env` file (never commit this):
|
|
22
|
-
|
|
23
|
-
```bash
|
|
24
|
-
# .env — agent wallet config
|
|
25
|
-
AGENT_PRIVATE_KEY=0x... # EOA signing key (32-byte hex)
|
|
26
|
-
AGENT_WALLET_ADDRESS=0x... # AgentAccountV2 contract address
|
|
27
|
-
CHAIN_NAME=base-sepolia # Use Base Sepolia for testing
|
|
28
|
-
RPC_URL=https://sepolia.base.org
|
|
29
|
-
|
|
30
|
-
# Spending limits (USDC, 6 decimals)
|
|
31
|
-
SPEND_LIMIT_PER_TX=1.00 # Max USDC per single transaction
|
|
32
|
-
SPEND_LIMIT_DAILY=10.00 # Max USDC per 24-hour period
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
---
|
|
36
|
-
|
|
37
|
-
## Path A: JavaScript (agentwallet-sdk direct)
|
|
38
|
-
|
|
39
|
-
**Under 10 lines.** Uses the `walletFromEnv()` convenience wrapper so there's
|
|
40
|
-
no viem boilerplate.
|
|
41
|
-
|
|
42
|
-
```bash
|
|
43
|
-
npm install agentwallet-sdk dotenv
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
```javascript
|
|
47
|
-
// first-tx.mjs
|
|
48
|
-
import 'dotenv/config';
|
|
49
|
-
import { walletFromEnv, setPolicyFromEnv, agentExecute } from 'agentwallet-sdk';
|
|
50
|
-
|
|
51
|
-
const wallet = await walletFromEnv(); // reads AGENT_PRIVATE_KEY + AGENT_WALLET_ADDRESS
|
|
52
|
-
await setPolicyFromEnv(wallet); // applies SPEND_LIMIT_PER_TX + SPEND_LIMIT_DAILY
|
|
53
|
-
|
|
54
|
-
const result = await agentExecute(wallet, {
|
|
55
|
-
to: '0x000000000000000000000000000000000000dEaD', // burn address (safe test target)
|
|
56
|
-
value: 1n, // 1 wei — near-zero cost
|
|
57
|
-
});
|
|
58
|
-
|
|
59
|
-
console.log(`✅ txHash: ${result.txHash}`);
|
|
60
|
-
console.log(` executed immediately: ${result.executed}`);
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
```bash
|
|
64
|
-
node first-tx.mjs
|
|
65
|
-
```
|
|
66
|
-
|
|
67
|
-
**Expected output:**
|
|
68
|
-
```
|
|
69
|
-
✅ txHash: 0x3a7f...c9e2
|
|
70
|
-
executed immediately: true
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
> If `executed: false` — the transaction was queued for owner approval because
|
|
74
|
-
> the amount exceeded your spend policy. Approve it with:
|
|
75
|
-
> ```bash
|
|
76
|
-
> node -e "
|
|
77
|
-
> import('agentwallet-sdk').then(async ({ walletFromEnv, getPendingApprovals, approveTransaction }) => {
|
|
78
|
-
> const w = walletFromEnv();
|
|
79
|
-
> const pending = await getPendingApprovals(w);
|
|
80
|
-
> if (pending.length > 0) await approveTransaction(w, pending[0].txId);
|
|
81
|
-
> console.log('Approved');
|
|
82
|
-
> });
|
|
83
|
-
> "
|
|
84
|
-
> ```
|
|
85
|
-
|
|
86
|
-
### What just happened
|
|
87
|
-
|
|
88
|
-
1. `walletFromEnv()` read your private key from `AGENT_PRIVATE_KEY`, connected
|
|
89
|
-
to Base Sepolia via `RPC_URL`, and instantiated the `AgentAccountV2` smart
|
|
90
|
-
wallet at `AGENT_WALLET_ADDRESS`.
|
|
91
|
-
2. `setPolicyFromEnv()` wrote a spend policy on-chain: USDC transfers up to
|
|
92
|
-
`SPEND_LIMIT_PER_TX` per tx and `SPEND_LIMIT_DAILY` per day execute
|
|
93
|
-
autonomously. Anything above is queued.
|
|
94
|
-
3. `agentExecute()` called `agentExecute()` on the smart contract, which checked
|
|
95
|
-
the native ETH policy and sent 1 wei to the burn address.
|
|
96
|
-
4. The tx hash was returned immediately — you can verify it on
|
|
97
|
-
[https://sepolia.basescan.org](https://sepolia.basescan.org/tx/{txHash}).
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
## Path B: Python (via agentpay-mcp over MCP)
|
|
102
|
-
|
|
103
|
-
**Under 15 lines.** Uses the official `mcp` Python SDK to connect to the
|
|
104
|
-
`agentpay-mcp` server and call `send_payment` over the Model Context Protocol.
|
|
105
|
-
|
|
106
|
-
```bash
|
|
107
|
-
pip install mcp python-dotenv
|
|
108
|
-
npx clawpowers mcp start # starts agentpay-mcp on stdio or a local port
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
```python
|
|
112
|
-
# first_tx.py
|
|
113
|
-
import asyncio
|
|
114
|
-
import os
|
|
115
|
-
from dotenv import load_dotenv
|
|
116
|
-
from mcp import ClientSession, StdioServerParameters
|
|
117
|
-
from mcp.client.stdio import stdio_client
|
|
118
|
-
|
|
119
|
-
load_dotenv()
|
|
120
|
-
|
|
121
|
-
async def main():
|
|
122
|
-
server = StdioServerParameters(
|
|
123
|
-
command="npx",
|
|
124
|
-
args=["agentpay-mcp"],
|
|
125
|
-
env={**os.environ}, # passes AGENT_PRIVATE_KEY, AGENT_WALLET_ADDRESS, etc.
|
|
126
|
-
)
|
|
127
|
-
async with stdio_client(server) as (read, write):
|
|
128
|
-
async with ClientSession(read, write) as session:
|
|
129
|
-
await session.initialize()
|
|
130
|
-
|
|
131
|
-
result = await session.call_tool("send_payment", {
|
|
132
|
-
"to": "0x000000000000000000000000000000000000dEaD",
|
|
133
|
-
"amount": "0.001", # USDC
|
|
134
|
-
"asset": "USDC",
|
|
135
|
-
"chain": "base-sepolia",
|
|
136
|
-
"reason": "first transaction test",
|
|
137
|
-
})
|
|
138
|
-
print(f"✅ txHash: {result.content[0].text}")
|
|
139
|
-
|
|
140
|
-
asyncio.run(main())
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
```bash
|
|
144
|
-
python first_tx.py
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
**Expected output:**
|
|
148
|
-
```
|
|
149
|
-
✅ txHash: 0x8b2d...f410
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### What just happened
|
|
153
|
-
|
|
154
|
-
1. `stdio_client` spawned `agentpay-mcp` as a subprocess — the MCP server
|
|
155
|
-
loaded your `.env` credentials and connected to Base Sepolia.
|
|
156
|
-
2. `session.call_tool("send_payment", ...)` sent an MCP tool call over stdio,
|
|
157
|
-
which the server translated into an `agentTransferToken()` call on your
|
|
158
|
-
`AgentAccountV2` smart wallet.
|
|
159
|
-
3. The server returned the transaction hash, which you can verify at
|
|
160
|
-
[https://sepolia.basescan.org](https://sepolia.basescan.org).
|
|
161
|
-
|
|
162
|
-
> **Python + MCP** is ideal when your agent framework is Python-based
|
|
163
|
-
> (LangChain, AutoGen, CrewAI) and you want to avoid writing viem/TypeScript.
|
|
164
|
-
> The MCP server handles all wallet logic; your Python code just calls tools.
|
|
165
|
-
|
|
166
|
-
---
|
|
167
|
-
|
|
168
|
-
## Verify Your Transaction
|
|
169
|
-
|
|
170
|
-
Both paths produce a `txHash`. Verify on-chain:
|
|
171
|
-
|
|
172
|
-
```bash
|
|
173
|
-
# Quick verification via cast (Foundry)
|
|
174
|
-
cast tx $TX_HASH --rpc-url https://sepolia.base.org
|
|
175
|
-
|
|
176
|
-
# Or open in browser
|
|
177
|
-
echo "https://sepolia.basescan.org/tx/$TX_HASH"
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
---
|
|
181
|
-
|
|
182
|
-
## Next Steps
|
|
183
|
-
|
|
184
|
-
| Goal | Resource |
|
|
185
|
-
|------|----------|
|
|
186
|
-
| Set up x402 automatic payments | `skills/agent-payments/SKILL.md` |
|
|
187
|
-
| Enable premium enrichment in prospecting | `skills/prospecting/SKILL.md` → "Premium Enrichment" section |
|
|
188
|
-
| Post a task bounty for another agent | `skills/agent-bounties/SKILL.md` |
|
|
189
|
-
| Review payment history | `npx clawpowers payments log` |
|
|
190
|
-
| Configure spending limits interactively | `npx clawpowers payments setup` (setup wizard) |
|
|
191
|
-
| Demo — see the full x402 flow in 60s | `runtime/demo/README.md` |
|
|
192
|
-
|
|
193
|
-
---
|
|
194
|
-
|
|
195
|
-
## Troubleshooting
|
|
196
|
-
|
|
197
|
-
| Error | Fix |
|
|
198
|
-
|-------|-----|
|
|
199
|
-
| `AGENT_PRIVATE_KEY environment variable is required` | Check your `.env` file exists and is loaded |
|
|
200
|
-
| `Unsupported chain: base-sepolia` | Ensure `agentwallet-sdk` is v0.3+ |
|
|
201
|
-
| `executed: false` (queued) | Amount > spend policy; lower `SPEND_LIMIT_PER_TX` or approve manually |
|
|
202
|
-
| `insufficient funds` | Get Base Sepolia ETH from the faucet link above |
|
|
203
|
-
| `nonce too low` | Another tx is pending; wait for confirmation or reset nonce |
|
|
204
|
-
| MCP: `spawn npx ENOENT` | Run `npm install -g agentpay-mcp` or use `npx --yes` |
|
package/gemini-extension.json
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "clawpowers",
|
|
3
|
-
"version": "1.0.0",
|
|
4
|
-
"description": "Skills framework with runtime execution, persistent memory, self-improvement, and agent payments for Gemini CLI.",
|
|
5
|
-
"author": "AI Agent Economy",
|
|
6
|
-
"homepage": "https://github.com/up2itnow0822/clawpowers",
|
|
7
|
-
"license": "MIT",
|
|
8
|
-
"type": "extension",
|
|
9
|
-
"hooks": {
|
|
10
|
-
"session_start": {
|
|
11
|
-
"command": "bash",
|
|
12
|
-
"args": ["hooks/session-start"],
|
|
13
|
-
"env": {
|
|
14
|
-
"GEMINI_CLI": "1"
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
},
|
|
18
|
-
"skills_directory": "skills/",
|
|
19
|
-
"runtime_directory": "runtime/",
|
|
20
|
-
"inject_on_start": true,
|
|
21
|
-
"inject_skill": "using-clawpowers",
|
|
22
|
-
"capabilities": [
|
|
23
|
-
"skill_injection",
|
|
24
|
-
"persistent_state",
|
|
25
|
-
"outcome_metrics",
|
|
26
|
-
"rsi_feedback"
|
|
27
|
-
],
|
|
28
|
-
"install": {
|
|
29
|
-
"command": "gemini extensions install https://github.com/up2itnow0822/clawpowers",
|
|
30
|
-
"post_install": "npx clawpowers init"
|
|
31
|
-
}
|
|
32
|
-
}
|