httpcat-cli 0.0.16 → 0.0.19
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/.github/dependabot.yml +27 -0
- package/.github/workflows/README.md +49 -0
- package/.github/workflows/ci.yml +101 -0
- package/.github/workflows/homebrew-tap.yml +63 -0
- package/.github/workflows/release.yml +361 -0
- package/README.md +165 -0
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +48 -11
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +11 -0
- package/dist/commands/list.js.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/index.js +10 -4
- package/dist/index.js.map +1 -1
- package/dist/mcp/chat-state.d.ts.map +1 -0
- package/dist/mcp/chat-state.js +180 -0
- package/dist/mcp/chat-state.js.map +1 -0
- package/dist/mcp/server.js +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +147 -3
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/types.d.ts.map +1 -1
- package/homebrew-httpcat/Formula/httpcat.rb +3 -3
- package/homebrew-httpcat/homebrew-httpcat/Formula/httpcat.rb +3 -3
- package/jest.config.js +38 -0
- package/monitor-foobar.js +117 -0
- package/package.json +11 -2
- package/tests/README.md +134 -0
- package/chat-automation.js +0 -171
package/dist/mcp/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/mcp/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mcp/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACrD,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;CAEvD;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;CAExD;AAED,MAAM,WAAW,UAAW,SAAQ,aAAa;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/mcp/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACpD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAgB,SAAQ,aAAa;IACrD,UAAU,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,gBAAiB,SAAQ,aAAa;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC;CACnC;AAED,MAAM,WAAW,iBAAkB,SAAQ,aAAa;CAEvD;AAED,MAAM,WAAW,kBAAmB,SAAQ,aAAa;CAExD;AAED,MAAM,WAAW,UAAW,SAAQ,aAAa;IAChD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAe,SAAQ,aAAa;IACpD,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,cAAc;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,KAAK,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;CACH;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;IAC3D,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACpC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,2BAA4B,SAAQ,aAAa;IACjE,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,2BAA2B;IAC3C,QAAQ,EAAE,KAAK,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,WAAW,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;CACH"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
class Httpcat < Formula
|
|
2
2
|
desc "CLI tool for interacting with httpcat agent - create, buy, and sell tokens with x402 payments"
|
|
3
3
|
homepage "https://github.com/hathbanger/httpcat-cli"
|
|
4
|
-
url "https://registry.npmjs.org/httpcat-cli/-/httpcat-cli-0.0.
|
|
5
|
-
sha256 "
|
|
4
|
+
url "https://registry.npmjs.org/httpcat-cli/-/httpcat-cli-0.0.17.tgz"
|
|
5
|
+
sha256 "c2f607a95a84df526ae9e8d5a7adc7dac29bea557dfaf43c47ccf227857c0b4e"
|
|
6
6
|
license "MIT"
|
|
7
7
|
|
|
8
8
|
depends_on "node"
|
|
@@ -13,6 +13,6 @@ class Httpcat < Formula
|
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
test do
|
|
16
|
-
assert_match "0.0.
|
|
16
|
+
assert_match "0.0.17", shell_output("#{bin}/httpcat --version")
|
|
17
17
|
end
|
|
18
18
|
end
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
class Httpcat < Formula
|
|
2
2
|
desc "CLI tool for interacting with httpcat agent - create, buy, and sell tokens with x402 payments"
|
|
3
3
|
homepage "https://github.com/hathbanger/httpcat-cli"
|
|
4
|
-
url "https://registry.npmjs.org/httpcat-cli/-/httpcat-cli-0.0.
|
|
5
|
-
sha256 "
|
|
4
|
+
url "https://registry.npmjs.org/httpcat-cli/-/httpcat-cli-0.0.16.tgz"
|
|
5
|
+
sha256 "36a1314faa8ab72aa7484bc8cbde5bb0e55286c9de7ec7a2522c354af0f11ef1"
|
|
6
6
|
license "MIT"
|
|
7
7
|
|
|
8
8
|
depends_on "node"
|
|
@@ -13,6 +13,6 @@ class Httpcat < Formula
|
|
|
13
13
|
end
|
|
14
14
|
|
|
15
15
|
test do
|
|
16
|
-
assert_match "0.0.
|
|
16
|
+
assert_match "0.0.16", shell_output("#{bin}/httpcat --version")
|
|
17
17
|
end
|
|
18
18
|
end
|
package/jest.config.js
ADDED
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export default {
|
|
2
|
+
preset: "ts-jest/presets/default-esm",
|
|
3
|
+
extensionsToTreatAsEsm: [".ts"],
|
|
4
|
+
testEnvironment: "node",
|
|
5
|
+
roots: ["<rootDir>/src", "<rootDir>/tests"],
|
|
6
|
+
testMatch: ["**/__tests__/**/*.ts", "**/?(*.)+(spec|test).ts"],
|
|
7
|
+
transform: {
|
|
8
|
+
"^.+\\.ts$": [
|
|
9
|
+
"ts-jest",
|
|
10
|
+
{
|
|
11
|
+
useESM: true,
|
|
12
|
+
tsconfig: {
|
|
13
|
+
module: "ES2022",
|
|
14
|
+
moduleResolution: "node",
|
|
15
|
+
allowImportingTsExtensions: false,
|
|
16
|
+
esModuleInterop: true,
|
|
17
|
+
skipLibCheck: true,
|
|
18
|
+
resolveJsonModule: true,
|
|
19
|
+
allowSyntheticDefaultImports: true,
|
|
20
|
+
},
|
|
21
|
+
},
|
|
22
|
+
],
|
|
23
|
+
},
|
|
24
|
+
transformIgnorePatterns: [
|
|
25
|
+
"node_modules/(?!(chalk|cli-table3|ora|neo-blessed|#ansi-styles|conf)/)",
|
|
26
|
+
],
|
|
27
|
+
moduleNameMapper: {
|
|
28
|
+
"^(\\.{1,2}/.*)\\.js$": "$1",
|
|
29
|
+
"^chalk$": "<rootDir>/tests/__mocks__/chalk.ts",
|
|
30
|
+
"^conf$": "<rootDir>/tests/__mocks__/conf.ts",
|
|
31
|
+
"^cli-table3$": "<rootDir>/tests/__mocks__/cli-table3.ts",
|
|
32
|
+
},
|
|
33
|
+
collectCoverageFrom: ["src/**/*.ts", "!src/**/*.d.ts", "!src/index.ts"],
|
|
34
|
+
coverageDirectory: "coverage",
|
|
35
|
+
coverageReporters: ["text", "lcov", "html"],
|
|
36
|
+
setupFilesAfterEnv: ["<rootDir>/tests/setup.ts"],
|
|
37
|
+
testTimeout: 10000,
|
|
38
|
+
};
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Monitor FRIDA chat for mentions of "foobar"
|
|
5
|
+
*
|
|
6
|
+
* Usage:
|
|
7
|
+
* node monitor-foobar.js
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
import { spawn } from "child_process";
|
|
11
|
+
import { fileURLToPath } from "url";
|
|
12
|
+
import { dirname } from "path";
|
|
13
|
+
|
|
14
|
+
const __filename = fileURLToPath(import.meta.url);
|
|
15
|
+
const __dirname = dirname(__filename);
|
|
16
|
+
|
|
17
|
+
const TOKEN = "FRIDA";
|
|
18
|
+
const SEARCH_TERM = "foobar";
|
|
19
|
+
|
|
20
|
+
console.error(`🔍 Monitoring FRIDA chat for mentions of "${SEARCH_TERM}"...`);
|
|
21
|
+
console.error(`Press Ctrl+C to stop monitoring\n`);
|
|
22
|
+
|
|
23
|
+
// Spawn httpcat chat process
|
|
24
|
+
const chatProcess = spawn("httpcat", ["chat", "--json", TOKEN], {
|
|
25
|
+
stdio: ["pipe", "pipe", "inherit"],
|
|
26
|
+
shell: true,
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
let outputBuffer = "";
|
|
30
|
+
let seenMessageIds = new Set();
|
|
31
|
+
|
|
32
|
+
chatProcess.stdout.on("data", (data) => {
|
|
33
|
+
outputBuffer += data.toString();
|
|
34
|
+
const lines = outputBuffer.split("\n");
|
|
35
|
+
outputBuffer = lines.pop() || "";
|
|
36
|
+
|
|
37
|
+
for (const line of lines) {
|
|
38
|
+
if (!line.trim()) continue;
|
|
39
|
+
|
|
40
|
+
try {
|
|
41
|
+
const event = JSON.parse(line);
|
|
42
|
+
|
|
43
|
+
switch (event.type) {
|
|
44
|
+
case "joined":
|
|
45
|
+
console.error(`✅ Joined FRIDA chat. Lease ID: ${event.leaseId}`);
|
|
46
|
+
console.error(`📡 Monitoring for "${SEARCH_TERM}" mentions...\n`);
|
|
47
|
+
break;
|
|
48
|
+
|
|
49
|
+
case "message":
|
|
50
|
+
const msg = event.data;
|
|
51
|
+
|
|
52
|
+
// Skip if we've already seen this message
|
|
53
|
+
if (seenMessageIds.has(msg.messageId)) {
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
seenMessageIds.add(msg.messageId);
|
|
57
|
+
|
|
58
|
+
// Check if message contains search term (case-insensitive)
|
|
59
|
+
if (msg.message.toLowerCase().includes(SEARCH_TERM.toLowerCase())) {
|
|
60
|
+
const author = msg.authorShort || msg.author?.slice(0, 10);
|
|
61
|
+
const time = new Date(msg.timestamp).toLocaleString();
|
|
62
|
+
|
|
63
|
+
console.error("\n" + "=".repeat(60));
|
|
64
|
+
console.error(`🎯 FOUND "${SEARCH_TERM}" MENTION!`);
|
|
65
|
+
console.error("=".repeat(60));
|
|
66
|
+
console.error(`Time: ${time}`);
|
|
67
|
+
console.error(`Author: ${author}`);
|
|
68
|
+
console.error(`Message: ${msg.message}`);
|
|
69
|
+
console.error("=".repeat(60) + "\n");
|
|
70
|
+
}
|
|
71
|
+
break;
|
|
72
|
+
|
|
73
|
+
case "lease_expired":
|
|
74
|
+
console.error("⏱️ Lease expired. Sending /renew...");
|
|
75
|
+
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
76
|
+
chatProcess.stdin.write("/renew\n");
|
|
77
|
+
}
|
|
78
|
+
break;
|
|
79
|
+
|
|
80
|
+
case "error":
|
|
81
|
+
console.error(`❌ Error: ${event.error}`);
|
|
82
|
+
break;
|
|
83
|
+
|
|
84
|
+
case "exiting":
|
|
85
|
+
console.error("👋 Chat session ended");
|
|
86
|
+
process.exit(0);
|
|
87
|
+
break;
|
|
88
|
+
}
|
|
89
|
+
} catch (error) {
|
|
90
|
+
// Not JSON, ignore
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
|
|
95
|
+
chatProcess.on("error", (error) => {
|
|
96
|
+
console.error(`❌ Failed to start chat process: ${error.message}`);
|
|
97
|
+
process.exit(1);
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
chatProcess.on("exit", (code) => {
|
|
101
|
+
if (code !== 0 && code !== null) {
|
|
102
|
+
console.error(`Chat process exited with code ${code}`);
|
|
103
|
+
}
|
|
104
|
+
process.exit(code || 0);
|
|
105
|
+
});
|
|
106
|
+
|
|
107
|
+
// Handle Ctrl+C
|
|
108
|
+
process.on("SIGINT", () => {
|
|
109
|
+
console.error("\n👋 Stopping monitor...");
|
|
110
|
+
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
111
|
+
chatProcess.stdin.write("/exit\n");
|
|
112
|
+
}
|
|
113
|
+
setTimeout(() => {
|
|
114
|
+
chatProcess.kill();
|
|
115
|
+
process.exit(0);
|
|
116
|
+
}, 1000);
|
|
117
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "httpcat-cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.19",
|
|
4
4
|
"description": "CLI tool for interacting with httpcat agent - create, buy, and sell tokens with x402 payments",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"bin": {
|
|
@@ -11,7 +11,12 @@
|
|
|
11
11
|
"build": "tsc",
|
|
12
12
|
"dev": "tsc --watch",
|
|
13
13
|
"start": "node dist/index.js",
|
|
14
|
-
"prepublishOnly": "yarn build"
|
|
14
|
+
"prepublishOnly": "yarn build",
|
|
15
|
+
"test": "jest",
|
|
16
|
+
"test:watch": "jest --watch",
|
|
17
|
+
"test:coverage": "jest --coverage",
|
|
18
|
+
"test:unit": "jest tests/unit",
|
|
19
|
+
"test:integration": "jest tests/integration"
|
|
15
20
|
},
|
|
16
21
|
"keywords": [
|
|
17
22
|
"httpcat",
|
|
@@ -50,8 +55,12 @@
|
|
|
50
55
|
"devDependencies": {
|
|
51
56
|
"@types/blessed": "^0.1.26",
|
|
52
57
|
"@types/inquirer": "^9.0.7",
|
|
58
|
+
"@types/jest": "^29.5.12",
|
|
53
59
|
"@types/node": "^20.10.0",
|
|
54
60
|
"@types/ws": "^8.5.13",
|
|
61
|
+
"@jest/globals": "^29.7.0",
|
|
62
|
+
"jest": "^29.7.0",
|
|
63
|
+
"ts-jest": "^29.1.2",
|
|
55
64
|
"typescript": "^5.3.3"
|
|
56
65
|
},
|
|
57
66
|
"engines": {
|
package/tests/README.md
ADDED
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
# Testing Suite
|
|
2
|
+
|
|
3
|
+
This directory contains the complete testing suite for httpcat-cli, including both unit and integration tests.
|
|
4
|
+
|
|
5
|
+
## Structure
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
tests/
|
|
9
|
+
├── setup.ts # Global test setup
|
|
10
|
+
├── unit/ # Unit tests
|
|
11
|
+
│ ├── utils/ # Utility function tests
|
|
12
|
+
│ │ ├── validation.test.ts
|
|
13
|
+
│ │ ├── formatting.test.ts
|
|
14
|
+
│ │ ├── errors.test.ts
|
|
15
|
+
│ │ └── token-resolver.test.ts
|
|
16
|
+
│ ├── config.test.ts # Config manager tests
|
|
17
|
+
│ ├── client.test.ts # HTTP client tests
|
|
18
|
+
│ └── commands/ # Command function tests
|
|
19
|
+
│ ├── create.test.ts
|
|
20
|
+
│ ├── buy.test.ts
|
|
21
|
+
│ ├── sell.test.ts
|
|
22
|
+
│ ├── info.test.ts
|
|
23
|
+
│ ├── list.test.ts
|
|
24
|
+
│ └── health.test.ts
|
|
25
|
+
└── integration/ # Integration tests
|
|
26
|
+
└── workflows.test.ts # End-to-end workflow tests
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Running Tests
|
|
30
|
+
|
|
31
|
+
### Run all tests
|
|
32
|
+
```bash
|
|
33
|
+
yarn test
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Run tests in watch mode
|
|
37
|
+
```bash
|
|
38
|
+
yarn test:watch
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
### Run tests with coverage
|
|
42
|
+
```bash
|
|
43
|
+
yarn test:coverage
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### Run only unit tests
|
|
47
|
+
```bash
|
|
48
|
+
yarn test:unit
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Run only integration tests
|
|
52
|
+
```bash
|
|
53
|
+
yarn test:integration
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Test Coverage
|
|
57
|
+
|
|
58
|
+
The test suite aims for comprehensive coverage of:
|
|
59
|
+
|
|
60
|
+
- **Unit Tests**: Individual functions and modules
|
|
61
|
+
- Validation utilities
|
|
62
|
+
- Formatting utilities
|
|
63
|
+
- Error handling
|
|
64
|
+
- Configuration management
|
|
65
|
+
- HTTP client (with mocked dependencies)
|
|
66
|
+
- Command functions (with mocked client)
|
|
67
|
+
|
|
68
|
+
- **Integration Tests**: Full workflows
|
|
69
|
+
- Token creation and trading lifecycle
|
|
70
|
+
- Token discovery
|
|
71
|
+
- Health checks
|
|
72
|
+
- Error handling workflows
|
|
73
|
+
|
|
74
|
+
## Writing Tests
|
|
75
|
+
|
|
76
|
+
### Unit Test Example
|
|
77
|
+
|
|
78
|
+
```typescript
|
|
79
|
+
import { validateTokenName } from '../../../src/utils/validation.js';
|
|
80
|
+
|
|
81
|
+
describe('validateTokenName', () => {
|
|
82
|
+
it('should accept valid token names', () => {
|
|
83
|
+
expect(() => validateTokenName('My Token')).not.toThrow();
|
|
84
|
+
});
|
|
85
|
+
|
|
86
|
+
it('should reject empty token names', () => {
|
|
87
|
+
expect(() => validateTokenName('')).toThrow();
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Integration Test Example
|
|
93
|
+
|
|
94
|
+
```typescript
|
|
95
|
+
import { createToken } from '../../src/commands/create.js';
|
|
96
|
+
import { HttpcatClient } from '../../src/client.js';
|
|
97
|
+
|
|
98
|
+
describe('Token Creation Workflow', () => {
|
|
99
|
+
it('should create token successfully', async () => {
|
|
100
|
+
const mockClient = createMockClient();
|
|
101
|
+
const result = await createToken(mockClient, {
|
|
102
|
+
name: 'Test Token',
|
|
103
|
+
symbol: 'TEST',
|
|
104
|
+
});
|
|
105
|
+
expect(result.tokenId).toBeDefined();
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Mocking
|
|
111
|
+
|
|
112
|
+
The test suite uses Jest's mocking capabilities to:
|
|
113
|
+
|
|
114
|
+
- Mock external dependencies (x402-fetch, config, etc.)
|
|
115
|
+
- Mock HTTP client responses
|
|
116
|
+
- Mock file system operations
|
|
117
|
+
- Mock user input
|
|
118
|
+
|
|
119
|
+
## Best Practices
|
|
120
|
+
|
|
121
|
+
1. **Isolation**: Each test should be independent and not rely on other tests
|
|
122
|
+
2. **Mocking**: Mock external dependencies to ensure fast, reliable tests
|
|
123
|
+
3. **Coverage**: Aim for high coverage of business logic
|
|
124
|
+
4. **Clarity**: Use descriptive test names and organize tests logically
|
|
125
|
+
5. **Edge Cases**: Test error conditions and edge cases
|
|
126
|
+
|
|
127
|
+
## Continuous Integration
|
|
128
|
+
|
|
129
|
+
Tests should pass before merging PRs. The CI pipeline will:
|
|
130
|
+
1. Install dependencies
|
|
131
|
+
2. Run linting
|
|
132
|
+
3. Run all tests
|
|
133
|
+
4. Generate coverage reports
|
|
134
|
+
|
package/chat-automation.js
DELETED
|
@@ -1,171 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Automated chat script for httpcat chat --json mode
|
|
5
|
-
*
|
|
6
|
-
* Usage:
|
|
7
|
-
* node chat-automation.js <token> [message1] [message2] ...
|
|
8
|
-
*
|
|
9
|
-
* Or pipe messages:
|
|
10
|
-
* echo -e "Hello\nWorld" | node chat-automation.js <token>
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
import { spawn } from 'child_process';
|
|
14
|
-
import { fileURLToPath } from 'url';
|
|
15
|
-
import { dirname, join } from 'path';
|
|
16
|
-
|
|
17
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
18
|
-
const __dirname = dirname(__filename);
|
|
19
|
-
|
|
20
|
-
const token = process.argv[2];
|
|
21
|
-
|
|
22
|
-
if (!token) {
|
|
23
|
-
console.error('Usage: node chat-automation.js <token> [message1] [message2] ...');
|
|
24
|
-
console.error(' Or: echo -e "msg1\\nmsg2" | node chat-automation.js <token>');
|
|
25
|
-
process.exit(1);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
// Get messages from command line args or stdin
|
|
29
|
-
const messages = process.argv.slice(3);
|
|
30
|
-
|
|
31
|
-
// Spawn httpcat chat process
|
|
32
|
-
const chatProcess = spawn('httpcat', ['chat', '--json', token], {
|
|
33
|
-
stdio: ['pipe', 'pipe', 'inherit'], // Capture stdout to parse JSON
|
|
34
|
-
shell: true,
|
|
35
|
-
});
|
|
36
|
-
|
|
37
|
-
// Handle JSON output from chat
|
|
38
|
-
let outputBuffer = '';
|
|
39
|
-
chatProcess.stdout.on('data', (data) => {
|
|
40
|
-
outputBuffer += data.toString();
|
|
41
|
-
const lines = outputBuffer.split('\n');
|
|
42
|
-
outputBuffer = lines.pop() || ''; // Keep incomplete line
|
|
43
|
-
|
|
44
|
-
for (const line of lines) {
|
|
45
|
-
if (!line.trim()) continue;
|
|
46
|
-
|
|
47
|
-
try {
|
|
48
|
-
const event = JSON.parse(line);
|
|
49
|
-
|
|
50
|
-
switch (event.type) {
|
|
51
|
-
case 'joined':
|
|
52
|
-
console.error(`✅ Joined chat. Lease ID: ${event.leaseId}`);
|
|
53
|
-
// Send initial messages if provided
|
|
54
|
-
if (messages.length > 0) {
|
|
55
|
-
setTimeout(() => {
|
|
56
|
-
messages.forEach((msg, index) => {
|
|
57
|
-
setTimeout(() => {
|
|
58
|
-
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
59
|
-
chatProcess.stdin.write(msg + '\n');
|
|
60
|
-
}
|
|
61
|
-
}, index * 1000); // 1 second between messages
|
|
62
|
-
});
|
|
63
|
-
}, 2000); // Wait 2 seconds after joining
|
|
64
|
-
}
|
|
65
|
-
break;
|
|
66
|
-
|
|
67
|
-
case 'message':
|
|
68
|
-
const msg = event.data;
|
|
69
|
-
const author = msg.authorShort || msg.author?.slice(0, 6);
|
|
70
|
-
const time = new Date(msg.timestamp).toLocaleTimeString();
|
|
71
|
-
console.error(`[${time}] ${author}: ${msg.message}`);
|
|
72
|
-
|
|
73
|
-
// Auto-respond to messages containing "claude" (case-insensitive)
|
|
74
|
-
// Check if message is from someone else (not our own)
|
|
75
|
-
const isOwn = msg.author?.toLowerCase() === process.env.HTTPCAT_ADDRESS?.toLowerCase();
|
|
76
|
-
if (msg.message.toLowerCase().includes('claude') && !isOwn) {
|
|
77
|
-
setTimeout(() => {
|
|
78
|
-
const response = `Hello! I'm Claude, an AI assistant. How can I help you?`;
|
|
79
|
-
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
80
|
-
chatProcess.stdin.write(response + '\n');
|
|
81
|
-
}
|
|
82
|
-
}, 1000);
|
|
83
|
-
}
|
|
84
|
-
break;
|
|
85
|
-
|
|
86
|
-
case 'message_sent':
|
|
87
|
-
console.error(`✅ Message sent: ${event.messageId}`);
|
|
88
|
-
break;
|
|
89
|
-
|
|
90
|
-
case 'lease_expired':
|
|
91
|
-
console.error('⏱️ Lease expired. Sending /renew...');
|
|
92
|
-
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
93
|
-
chatProcess.stdin.write('/renew\n');
|
|
94
|
-
}
|
|
95
|
-
break;
|
|
96
|
-
|
|
97
|
-
case 'error':
|
|
98
|
-
console.error(`❌ Error: ${event.error}`);
|
|
99
|
-
break;
|
|
100
|
-
|
|
101
|
-
case 'exiting':
|
|
102
|
-
console.error('👋 Chat session ended');
|
|
103
|
-
process.exit(0);
|
|
104
|
-
break;
|
|
105
|
-
}
|
|
106
|
-
} catch (error) {
|
|
107
|
-
// Not JSON, might be regular output - ignore or log
|
|
108
|
-
if (line.trim() && !line.startsWith('{')) {
|
|
109
|
-
console.error(line);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
});
|
|
114
|
-
|
|
115
|
-
// Send messages from stdin if no command line args
|
|
116
|
-
if (messages.length === 0 && !process.stdin.isTTY) {
|
|
117
|
-
let stdinBuffer = '';
|
|
118
|
-
|
|
119
|
-
process.stdin.setEncoding('utf8');
|
|
120
|
-
process.stdin.on('data', (chunk) => {
|
|
121
|
-
stdinBuffer += chunk.toString();
|
|
122
|
-
const lines = stdinBuffer.split('\n');
|
|
123
|
-
stdinBuffer = lines.pop() || '';
|
|
124
|
-
|
|
125
|
-
for (const line of lines) {
|
|
126
|
-
const trimmed = line.trim();
|
|
127
|
-
if (trimmed) {
|
|
128
|
-
// Wait a bit for chat to be ready, then send
|
|
129
|
-
setTimeout(() => {
|
|
130
|
-
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
131
|
-
chatProcess.stdin.write(trimmed + '\n');
|
|
132
|
-
}
|
|
133
|
-
}, 2000);
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
});
|
|
137
|
-
|
|
138
|
-
process.stdin.on('end', () => {
|
|
139
|
-
// Keep process alive to receive messages
|
|
140
|
-
// User can Ctrl+C to exit
|
|
141
|
-
});
|
|
142
|
-
} else if (messages.length > 0) {
|
|
143
|
-
// Messages provided via command line - will be sent after joining
|
|
144
|
-
// (handled in the 'joined' event handler above)
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
// Handle process errors
|
|
148
|
-
chatProcess.on('error', (error) => {
|
|
149
|
-
console.error(`❌ Failed to start chat process: ${error.message}`);
|
|
150
|
-
process.exit(1);
|
|
151
|
-
});
|
|
152
|
-
|
|
153
|
-
chatProcess.on('exit', (code) => {
|
|
154
|
-
if (code !== 0 && code !== null) {
|
|
155
|
-
console.error(`Chat process exited with code ${code}`);
|
|
156
|
-
}
|
|
157
|
-
process.exit(code || 0);
|
|
158
|
-
});
|
|
159
|
-
|
|
160
|
-
// Handle Ctrl+C
|
|
161
|
-
process.on('SIGINT', () => {
|
|
162
|
-
console.error('\n👋 Shutting down...');
|
|
163
|
-
if (chatProcess.stdin && !chatProcess.stdin.destroyed) {
|
|
164
|
-
chatProcess.stdin.write('/exit\n');
|
|
165
|
-
}
|
|
166
|
-
setTimeout(() => {
|
|
167
|
-
chatProcess.kill();
|
|
168
|
-
process.exit(0);
|
|
169
|
-
}, 1000);
|
|
170
|
-
});
|
|
171
|
-
|