crewly 1.20.122 → 1.20.124
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/config/skills/agent/core/whatsapp-draft/SKILL.md +80 -0
- package/config/skills/agent/core/whatsapp-draft/execute.sh +84 -0
- package/config/skills/agent/core/whatsapp-draft/execute.test.sh +70 -0
- package/config/skills/agent/core/whatsapp-inbox/SKILL.md +75 -0
- package/config/skills/agent/core/whatsapp-inbox/execute.sh +87 -0
- package/config/skills/agent/core/whatsapp-inbox/execute.test.sh +68 -0
- package/config/skills/agent/core/whatsapp-read/SKILL.md +80 -0
- package/config/skills/agent/core/whatsapp-read/execute.sh +116 -0
- package/config/skills/agent/core/whatsapp-read/execute.test.sh +84 -0
- package/config/skills/agent/core/whatsapp-send/SKILL.md +70 -0
- package/config/skills/agent/core/whatsapp-send/execute.sh +84 -0
- package/config/skills/agent/core/whatsapp-send/execute.test.sh +79 -0
- package/dist/backend/backend/src/constants.d.ts +225 -0
- package/dist/backend/backend/src/constants.d.ts.map +1 -1
- package/dist/backend/backend/src/constants.js +223 -0
- package/dist/backend/backend/src/constants.js.map +1 -1
- package/dist/backend/backend/src/controllers/harness/harness.controller.d.ts +54 -0
- package/dist/backend/backend/src/controllers/harness/harness.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/harness/harness.controller.js +204 -0
- package/dist/backend/backend/src/controllers/harness/harness.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/harness/harness.routes.d.ts +27 -0
- package/dist/backend/backend/src/controllers/harness/harness.routes.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/harness/harness.routes.js +43 -0
- package/dist/backend/backend/src/controllers/harness/harness.routes.js.map +1 -0
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.d.ts +73 -0
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.d.ts.map +1 -0
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.js +310 -0
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp-inbox.controller.js.map +1 -0
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.d.ts.map +1 -1
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.js +53 -4
- package/dist/backend/backend/src/controllers/whatsapp/whatsapp.controller.js.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.d.ts.map +1 -1
- package/dist/backend/backend/src/routes/api.routes.js +4 -0
- package/dist/backend/backend/src/routes/api.routes.js.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts +5 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/agent/agent-registration.service.js +7 -0
- package/dist/backend/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js +5 -0
- package/dist/backend/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +2 -1
- package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js +4 -3
- package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js +43 -1
- package/dist/backend/backend/src/services/cloud/mobile-api-relay.service.js.map +1 -1
- package/dist/backend/backend/src/services/harness/claude-config.utils.d.ts +67 -0
- package/dist/backend/backend/src/services/harness/claude-config.utils.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/claude-config.utils.js +118 -0
- package/dist/backend/backend/src/services/harness/claude-config.utils.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-api-key.service.d.ts +99 -0
- package/dist/backend/backend/src/services/harness/harness-api-key.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-api-key.service.js +157 -0
- package/dist/backend/backend/src/services/harness/harness-api-key.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-credentials.store.d.ts +135 -0
- package/dist/backend/backend/src/services/harness/harness-credentials.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-credentials.store.js +208 -0
- package/dist/backend/backend/src/services/harness/harness-credentials.store.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-exec.utils.d.ts +85 -0
- package/dist/backend/backend/src/services/harness/harness-exec.utils.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-exec.utils.js +183 -0
- package/dist/backend/backend/src/services/harness/harness-exec.utils.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-install.service.d.ts +106 -0
- package/dist/backend/backend/src/services/harness/harness-install.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-install.service.js +205 -0
- package/dist/backend/backend/src/services/harness/harness-install.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-registry.d.ts +86 -0
- package/dist/backend/backend/src/services/harness/harness-registry.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-registry.js +121 -0
- package/dist/backend/backend/src/services/harness/harness-registry.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-status.service.d.ts +173 -0
- package/dist/backend/backend/src/services/harness/harness-status.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness-status.service.js +324 -0
- package/dist/backend/backend/src/services/harness/harness-status.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness.service.d.ts +146 -0
- package/dist/backend/backend/src/services/harness/harness.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness.service.js +193 -0
- package/dist/backend/backend/src/services/harness/harness.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/harness.types.d.ts +138 -0
- package/dist/backend/backend/src/services/harness/harness.types.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/harness.types.js +51 -0
- package/dist/backend/backend/src/services/harness/harness.types.js.map +1 -0
- package/dist/backend/backend/src/services/harness/login-broker.service.d.ts +238 -0
- package/dist/backend/backend/src/services/harness/login-broker.service.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/login-broker.service.js +495 -0
- package/dist/backend/backend/src/services/harness/login-broker.service.js.map +1 -0
- package/dist/backend/backend/src/services/harness/login-rules.d.ts +162 -0
- package/dist/backend/backend/src/services/harness/login-rules.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/login-rules.js +344 -0
- package/dist/backend/backend/src/services/harness/login-rules.js.map +1 -0
- package/dist/backend/backend/src/services/harness/orc-harness.store.d.ts +59 -0
- package/dist/backend/backend/src/services/harness/orc-harness.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/harness/orc-harness.store.js +108 -0
- package/dist/backend/backend/src/services/harness/orc-harness.store.js.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/index.d.ts +5 -1
- package/dist/backend/backend/src/services/whatsapp/index.d.ts.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/index.js +5 -1
- package/dist/backend/backend/src/services/whatsapp/index.js.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp-connection-config.d.ts +59 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-connection-config.d.ts.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-connection-config.js +108 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-connection-config.js.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.d.ts +74 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.d.ts.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.js +82 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-draft-gate.js.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox-capture.d.ts +184 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox-capture.d.ts.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox-capture.js +420 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox-capture.js.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox.store.d.ts +243 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox.store.d.ts.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox.store.js +538 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-inbox.store.js.map +1 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-initializer.d.ts +32 -2
- package/dist/backend/backend/src/services/whatsapp/whatsapp-initializer.d.ts.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp-initializer.js +65 -9
- package/dist/backend/backend/src/services/whatsapp/whatsapp-initializer.js.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.d.ts.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js +11 -0
- package/dist/backend/backend/src/services/whatsapp/whatsapp-orchestrator-bridge.js.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp.service.d.ts +59 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp.service.d.ts.map +1 -1
- package/dist/backend/backend/src/services/whatsapp/whatsapp.service.js +159 -9
- package/dist/backend/backend/src/services/whatsapp/whatsapp.service.js.map +1 -1
- package/dist/backend/backend/src/types/whatsapp.types.d.ts +108 -0
- package/dist/backend/backend/src/types/whatsapp.types.d.ts.map +1 -1
- package/dist/backend/backend/src/types/whatsapp.types.js +9 -0
- package/dist/backend/backend/src/types/whatsapp.types.js.map +1 -1
- package/dist/backend/build-info.json +2 -2
- package/dist/cli/backend/src/constants.d.ts +225 -0
- package/dist/cli/backend/src/constants.d.ts.map +1 -1
- package/dist/cli/backend/src/constants.js +223 -0
- package/dist/cli/backend/src/constants.js.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts +5 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/agent/agent-registration.service.js +7 -0
- package/dist/cli/backend/src/services/agent/agent-registration.service.js.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.d.ts.map +1 -1
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js +5 -0
- package/dist/cli/backend/src/services/ai/prompt-modules/skills-reference.module.js.map +1 -1
- package/dist/cli/backend/src/services/cloud/cloud-client.service.d.ts +2 -1
- package/dist/cli/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
- package/dist/cli/backend/src/services/cloud/cloud-client.service.js +4 -3
- package/dist/cli/backend/src/services/cloud/cloud-client.service.js.map +1 -1
- package/dist/cli/backend/src/services/harness/claude-config.utils.d.ts +67 -0
- package/dist/cli/backend/src/services/harness/claude-config.utils.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/claude-config.utils.js +118 -0
- package/dist/cli/backend/src/services/harness/claude-config.utils.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-api-key.service.d.ts +99 -0
- package/dist/cli/backend/src/services/harness/harness-api-key.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-api-key.service.js +157 -0
- package/dist/cli/backend/src/services/harness/harness-api-key.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-credentials.store.d.ts +135 -0
- package/dist/cli/backend/src/services/harness/harness-credentials.store.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-credentials.store.js +208 -0
- package/dist/cli/backend/src/services/harness/harness-credentials.store.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-exec.utils.d.ts +85 -0
- package/dist/cli/backend/src/services/harness/harness-exec.utils.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-exec.utils.js +183 -0
- package/dist/cli/backend/src/services/harness/harness-exec.utils.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-install.service.d.ts +106 -0
- package/dist/cli/backend/src/services/harness/harness-install.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-install.service.js +205 -0
- package/dist/cli/backend/src/services/harness/harness-install.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-registry.d.ts +86 -0
- package/dist/cli/backend/src/services/harness/harness-registry.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-registry.js +121 -0
- package/dist/cli/backend/src/services/harness/harness-registry.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-status.service.d.ts +173 -0
- package/dist/cli/backend/src/services/harness/harness-status.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness-status.service.js +324 -0
- package/dist/cli/backend/src/services/harness/harness-status.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness.service.d.ts +146 -0
- package/dist/cli/backend/src/services/harness/harness.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness.service.js +193 -0
- package/dist/cli/backend/src/services/harness/harness.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/harness.types.d.ts +138 -0
- package/dist/cli/backend/src/services/harness/harness.types.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/harness.types.js +51 -0
- package/dist/cli/backend/src/services/harness/harness.types.js.map +1 -0
- package/dist/cli/backend/src/services/harness/login-broker.service.d.ts +238 -0
- package/dist/cli/backend/src/services/harness/login-broker.service.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/login-broker.service.js +495 -0
- package/dist/cli/backend/src/services/harness/login-broker.service.js.map +1 -0
- package/dist/cli/backend/src/services/harness/login-rules.d.ts +162 -0
- package/dist/cli/backend/src/services/harness/login-rules.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/login-rules.js +344 -0
- package/dist/cli/backend/src/services/harness/login-rules.js.map +1 -0
- package/dist/cli/backend/src/services/harness/orc-harness.store.d.ts +59 -0
- package/dist/cli/backend/src/services/harness/orc-harness.store.d.ts.map +1 -0
- package/dist/cli/backend/src/services/harness/orc-harness.store.js +108 -0
- package/dist/cli/backend/src/services/harness/orc-harness.store.js.map +1 -0
- package/dist/cli/cli/src/commands/harness-setup.d.ts +159 -0
- package/dist/cli/cli/src/commands/harness-setup.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/harness-setup.js +377 -0
- package/dist/cli/cli/src/commands/harness-setup.js.map +1 -0
- package/dist/cli/cli/src/commands/harness.d.ts +56 -0
- package/dist/cli/cli/src/commands/harness.d.ts.map +1 -0
- package/dist/cli/cli/src/commands/harness.js +97 -0
- package/dist/cli/cli/src/commands/harness.js.map +1 -0
- package/dist/cli/cli/src/commands/onboard.d.ts +108 -50
- package/dist/cli/cli/src/commands/onboard.d.ts.map +1 -1
- package/dist/cli/cli/src/commands/onboard.js +200 -191
- package/dist/cli/cli/src/commands/onboard.js.map +1 -1
- package/dist/cli/cli/src/constants.d.ts +18 -0
- package/dist/cli/cli/src/constants.d.ts.map +1 -1
- package/dist/cli/cli/src/constants.js +18 -0
- package/dist/cli/cli/src/constants.js.map +1 -1
- package/dist/cli/cli/src/index.js +22 -3
- package/dist/cli/cli/src/index.js.map +1 -1
- package/dist/cli/cli/src/utils/harness-engine.d.ts +99 -0
- package/dist/cli/cli/src/utils/harness-engine.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/harness-engine.js +143 -0
- package/dist/cli/cli/src/utils/harness-engine.js.map +1 -0
- package/dist/cli/cli/src/utils/prompt-io.d.ts +25 -0
- package/dist/cli/cli/src/utils/prompt-io.d.ts.map +1 -0
- package/dist/cli/cli/src/utils/prompt-io.js +47 -0
- package/dist/cli/cli/src/utils/prompt-io.js.map +1 -0
- package/frontend/dist/assets/{index-8327e63e.css → index-0a2f783c.css} +1 -1
- package/frontend/dist/assets/{index-07e338a9.js → index-aaf65055.js} +309 -309
- package/frontend/dist/index.html +2 -2
- package/package.json +1 -1
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Tests for whatsapp-read — run with: bash execute.test.sh </dev/null
|
|
3
|
+
# Spins up a python HTTP stub as the backend, asserts the request path the
|
|
4
|
+
# skill sends and the JSON it prints. Exit 0 on pass.
|
|
5
|
+
set -u
|
|
6
|
+
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
7
|
+
EXEC="$HERE/execute.sh"
|
|
8
|
+
PASS=0; FAIL=0
|
|
9
|
+
check() {
|
|
10
|
+
local name="$1"; local got="$2"; local want="$3"
|
|
11
|
+
if [ "$got" = "$want" ]; then PASS=$((PASS+1)); else FAIL=$((FAIL+1)); echo "FAIL: $name"; echo " want: $want"; echo " got: $got"; fi
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
PORT=18842
|
|
15
|
+
STUB_LOG="$(mktemp)"; export STUB_LOG; export STUB_PORT="$PORT"
|
|
16
|
+
python3 -u <<'PY' >/dev/null 2>&1 &
|
|
17
|
+
from http.server import BaseHTTPRequestHandler, HTTPServer
|
|
18
|
+
from urllib.parse import urlparse
|
|
19
|
+
import json, os
|
|
20
|
+
LOG = os.environ['STUB_LOG']; PORT = int(os.environ['STUB_PORT'])
|
|
21
|
+
CHAT = {'id': '491@s.whatsapp.net', 'name': 'Ann', 'isGroup': False, 'lastMessageAt': 1760000000000}
|
|
22
|
+
M_IN = {'id': 'm1', 'chatId': '491@s.whatsapp.net', 'fromMe': False, 'senderJid': '491@s.whatsapp.net', 'senderName': 'Ann', 'text': 'at 8?', 'ts': 1760000000000, 'kind': 'text'}
|
|
23
|
+
M_OUT = dict(M_IN, id='m2', fromMe=True, senderJid='999@s.whatsapp.net', senderName=None, text='yes', ts=1760000060000)
|
|
24
|
+
class H(BaseHTTPRequestHandler):
|
|
25
|
+
def reply(self, code, body):
|
|
26
|
+
self.send_response(code); self.send_header('Content-Type', 'application/json'); self.end_headers()
|
|
27
|
+
self.wfile.write(json.dumps(body).encode())
|
|
28
|
+
def do_GET(self):
|
|
29
|
+
open(LOG, 'w').write(json.dumps({'method': 'GET', 'path': self.path}))
|
|
30
|
+
p = urlparse(self.path).path
|
|
31
|
+
if p == '/api/whatsapp/chats/nobody%40s.whatsapp.net/messages':
|
|
32
|
+
return self.reply(404, {'success': False, 'code': 'chat_not_found', 'error': 'Unknown chat: nobody@s.whatsapp.net'})
|
|
33
|
+
if p.endswith('/messages'):
|
|
34
|
+
return self.reply(200, {'success': True, 'data': {'chat': CHAT, 'messages': [M_IN, M_OUT], 'nextBefore': 1760000000000}})
|
|
35
|
+
if p == '/api/whatsapp/search':
|
|
36
|
+
return self.reply(200, {'success': True, 'data': [dict(M_IN, chatName='Ann')]})
|
|
37
|
+
if p == '/api/whatsapp/chats':
|
|
38
|
+
return self.reply(200, {'success': True, 'data': [CHAT, {'id': '120@g.us', 'name': None, 'isGroup': True, 'lastMessageAt': None}]})
|
|
39
|
+
self.reply(404, {'success': False, 'error': 'no route'})
|
|
40
|
+
def log_message(self, *a, **k): pass
|
|
41
|
+
HTTPServer(('127.0.0.1', PORT), H).serve_forever()
|
|
42
|
+
PY
|
|
43
|
+
STUB_PID=$!
|
|
44
|
+
disown "$STUB_PID" 2>/dev/null || true
|
|
45
|
+
trap 'kill "$STUB_PID" >/dev/null 2>&1; rm -f "$STUB_LOG"' EXIT
|
|
46
|
+
for i in $(seq 1 30); do curl -s -o /dev/null -m 0.2 "http://127.0.0.1:${PORT}/" 2>/dev/null && break; sleep 0.1; done
|
|
47
|
+
|
|
48
|
+
run() { CREWLY_SESSION_NAME=test-agent CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" "$@" 2>/dev/null; }
|
|
49
|
+
run_err() { CREWLY_SESSION_NAME=test-agent CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" "$@" 2>&1 >/dev/null | jq -r '.error' 2>/dev/null; }
|
|
50
|
+
|
|
51
|
+
# --- one chat ---
|
|
52
|
+
OUT=$(run --chat 491@s.whatsapp.net --limit 2 --before 1760000100000)
|
|
53
|
+
check "chat: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/chats/491%40s.whatsapp.net/messages?limit=2&before=1760000100000"
|
|
54
|
+
check "chat: output" "$OUT" '{"chat":{"chatId":"491@s.whatsapp.net","name":"Ann","isGroup":false},"messages":[{"at":"2025-10-09T08:53:20Z","fromMe":false,"sender":"Ann","kind":"text","text":"at 8?"},{"at":"2025-10-09T08:54:20Z","fromMe":true,"sender":"me","kind":"text","text":"yes"}],"nextBefore":1760000000000}'
|
|
55
|
+
|
|
56
|
+
run '{"chatId":"491@s.whatsapp.net"}' >/dev/null
|
|
57
|
+
check "chat json: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/chats/491%40s.whatsapp.net/messages"
|
|
58
|
+
|
|
59
|
+
# --- search ---
|
|
60
|
+
OUT=$(run --q "dinner & wine" --limit 5)
|
|
61
|
+
check "search: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/search?q=dinner%20%26%20wine&limit=5"
|
|
62
|
+
check "search: output" "$OUT" '{"count":1,"hits":[{"chatId":"491@s.whatsapp.net","chatName":"Ann","at":"2025-10-09T08:53:20Z","fromMe":false,"sender":"Ann","kind":"text","text":"at 8?"}]}'
|
|
63
|
+
|
|
64
|
+
# --- list chats ---
|
|
65
|
+
OUT=$(run --chats --q ann)
|
|
66
|
+
check "chats: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/chats?q=ann"
|
|
67
|
+
check "chats: output" "$OUT" '{"count":2,"chats":[{"chatId":"491@s.whatsapp.net","name":"Ann","isGroup":false,"lastAt":"2025-10-09T08:53:20Z"},{"chatId":"120@g.us","name":"120@g.us","isGroup":true,"lastAt":null}]}'
|
|
68
|
+
run '{"chats":true,"limit":3}' >/dev/null
|
|
69
|
+
check "chats json: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/chats?limit=3"
|
|
70
|
+
|
|
71
|
+
# --- no session name: output stays clean JSON ---
|
|
72
|
+
OUT=$(CREWLY_SESSION_NAME= CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" --q x 2>/dev/null | jq -r .count)
|
|
73
|
+
check "no session: output still parses" "$OUT" "1"
|
|
74
|
+
|
|
75
|
+
# --- errors ---
|
|
76
|
+
OUT=$(CREWLY_SESSION_NAME=test-agent CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" --chat nobody@s.whatsapp.net 2>/dev/null); RC=$?
|
|
77
|
+
check "404: exit code" "$RC" "1"
|
|
78
|
+
check "404: reason" "$OUT" '{"success":false,"reason":"chat_not_found","message":"Unknown chat: nobody@s.whatsapp.net"}'
|
|
79
|
+
|
|
80
|
+
check "needs a mode" "$(run_err)" "Pass --chat <jid>, --q <text>, or --chats"
|
|
81
|
+
check "unknown option errors" "$(run_err --bogus)" "Unknown option: --bogus"
|
|
82
|
+
|
|
83
|
+
echo "=== Results: $PASS passed, $FAIL failed ==="
|
|
84
|
+
[ "$FAIL" -eq 0 ]
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: WhatsApp Send
|
|
3
|
+
description: Send ONE WhatsApp reply draft that the owner has explicitly confirmed by replying 「发 <code>」. Fails with needs_owner_confirmation otherwise. Never use it on your own initiative.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
category: communication
|
|
6
|
+
skillType: claude-skill
|
|
7
|
+
assignableRoles:
|
|
8
|
+
- orchestrator
|
|
9
|
+
- team-leader
|
|
10
|
+
- generalist
|
|
11
|
+
- operations
|
|
12
|
+
- ops
|
|
13
|
+
- support
|
|
14
|
+
- sales
|
|
15
|
+
triggers:
|
|
16
|
+
- 发 W
|
|
17
|
+
- send whatsapp draft
|
|
18
|
+
tags:
|
|
19
|
+
- whatsapp
|
|
20
|
+
- send
|
|
21
|
+
execution:
|
|
22
|
+
type: script
|
|
23
|
+
script:
|
|
24
|
+
file: execute.sh
|
|
25
|
+
interpreter: bash
|
|
26
|
+
timeoutMs: 30000
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
# WhatsApp Send
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
bash execute.sh --draft W12
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Use this **only** right after the owner has replied **「发 W12」** (or 「发送 W12」,
|
|
36
|
+
"send W12", 「确认发送 W12」) for that exact draft. One draft per call, one
|
|
37
|
+
message per draft.
|
|
38
|
+
|
|
39
|
+
## How the backend decides
|
|
40
|
+
|
|
41
|
+
The server checks the owner's own chat messages — which you cannot write or
|
|
42
|
+
fake — for 「发 W12」 sent **after** the draft was created. The draft must also be
|
|
43
|
+
less than **30 minutes** old. If either is missing you get:
|
|
44
|
+
|
|
45
|
+
```json
|
|
46
|
+
{"success":false,"sent":false,"reason":"needs_owner_confirmation","message":"NOT SENT: the owner has not confirmed. …"}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
That is not an error to work around. Show the owner the draft (recipient, exact
|
|
50
|
+
text, code) and ask them to reply 「发 W12」. If the draft is older than 30
|
|
51
|
+
minutes, ask them to send it from the dashboard, or write a fresh draft.
|
|
52
|
+
|
|
53
|
+
Other failures: `draft_not_pending` (already sent or discarded — never resend),
|
|
54
|
+
`draft_not_found`, `not_connected`, `send_failed`.
|
|
55
|
+
|
|
56
|
+
## Rules (owner decision — apply to every whatsapp-* skill)
|
|
57
|
+
|
|
58
|
+
- **Never send anything without the owner's explicit 「发 <code>」.** A general
|
|
59
|
+
"ok", "sounds good" or "handle it" is not a confirmation.
|
|
60
|
+
- **Never auto-reply to anyone.**
|
|
61
|
+
- **Summarise; don't paste private chats wholesale** into other channels.
|
|
62
|
+
- **Groups are low priority.**
|
|
63
|
+
|
|
64
|
+
## Output
|
|
65
|
+
|
|
66
|
+
```json
|
|
67
|
+
{"success":true,"sent":true,"code":"W12","recipient":"Ann","sentAt":"2026-09-24T18:05:00Z"}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
Tell the owner it went out, in one line.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# =============================================================================
|
|
3
|
+
# whatsapp-send — Send ONE WhatsApp draft the owner has confirmed
|
|
4
|
+
#
|
|
5
|
+
# Backed by POST /api/whatsapp/drafts/<id|code>/send. The backend refuses
|
|
6
|
+
# (403 needs_owner_confirmation) unless the owner replied 「发 <code>」 in chat
|
|
7
|
+
# after the draft was written, within 30 minutes. This skill cannot get
|
|
8
|
+
# around that, and must not try.
|
|
9
|
+
#
|
|
10
|
+
# Usage:
|
|
11
|
+
# bash execute.sh --draft W12
|
|
12
|
+
# bash execute.sh '{"draft":"W12"}'
|
|
13
|
+
# =============================================================================
|
|
14
|
+
set -euo pipefail
|
|
15
|
+
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
16
|
+
source "${SCRIPT_DIR}/../../_common/lib.sh"
|
|
17
|
+
|
|
18
|
+
print_usage() {
|
|
19
|
+
cat <<'EOF_USAGE'
|
|
20
|
+
Usage:
|
|
21
|
+
bash execute.sh --draft <id|code>
|
|
22
|
+
bash execute.sh '{"draft":"W12"}'
|
|
23
|
+
|
|
24
|
+
Options:
|
|
25
|
+
--draft Draft id or code (W12) the owner confirmed with 「发 W12」
|
|
26
|
+
--help | -h Show this help
|
|
27
|
+
|
|
28
|
+
Fails unless the owner has replied 「发 <code>」 for this draft.
|
|
29
|
+
EOF_USAGE
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
INPUT_JSON=""
|
|
33
|
+
DRAFT=""
|
|
34
|
+
|
|
35
|
+
if [[ $# -gt 0 && ${1:0:1} == '{' ]]; then
|
|
36
|
+
INPUT_JSON="$1"
|
|
37
|
+
shift || true
|
|
38
|
+
fi
|
|
39
|
+
|
|
40
|
+
while [[ $# -gt 0 ]]; do
|
|
41
|
+
case "$1" in
|
|
42
|
+
--draft|-d) [ $# -ge 2 ] || error_exit "--draft requires a value"; DRAFT="$2"; shift 2 ;;
|
|
43
|
+
--help|-h) print_usage; exit 0 ;;
|
|
44
|
+
*) error_exit "Unknown option: $1" ;;
|
|
45
|
+
esac
|
|
46
|
+
done
|
|
47
|
+
|
|
48
|
+
if [ -n "$INPUT_JSON" ]; then
|
|
49
|
+
INPUT=$(read_json_input "$INPUT_JSON")
|
|
50
|
+
[ -z "$DRAFT" ] && DRAFT=$(printf '%s' "$INPUT" | jq -r '.draft // .draftId // .code // .id // empty')
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
require_param "draft (--draft)" "$DRAFT"
|
|
54
|
+
|
|
55
|
+
# Without X-Agent-Session the backend treats a call as the owner's own click.
|
|
56
|
+
# An agent must never be mistaken for the owner, so refuse to run anonymously.
|
|
57
|
+
if [ -z "${CREWLY_SESSION_NAME:-}" ]; then
|
|
58
|
+
error_exit "CREWLY_SESSION_NAME is not set. whatsapp-send only runs as an identified agent; ask the owner to send it themselves or restart the agent."
|
|
59
|
+
fi
|
|
60
|
+
|
|
61
|
+
REF=$(jq -rn --arg v "$DRAFT" '$v|@uri')
|
|
62
|
+
|
|
63
|
+
# stderr is kept apart so lib.sh's session warning cannot pollute a good response.
|
|
64
|
+
ERR_FILE=$(mktemp); trap 'rm -f "$ERR_FILE"' EXIT
|
|
65
|
+
RESPONSE=$(api_call POST "/whatsapp/drafts/${REF}/send" '{}' 2>"$ERR_FILE") || {
|
|
66
|
+
ERR=$(tail -n 1 "$ERR_FILE")
|
|
67
|
+
printf '%s' "$ERR" | jq -c '{
|
|
68
|
+
success: false,
|
|
69
|
+
sent: false,
|
|
70
|
+
reason: (.details.code // .details.error // .details // .error // "unknown"),
|
|
71
|
+
message: (if .details.code == "needs_owner_confirmation"
|
|
72
|
+
then "NOT SENT: the owner has not confirmed. " + (.details.error // "")
|
|
73
|
+
else (.details.error // "") end)
|
|
74
|
+
}' 2>/dev/null || jq -n --arg r "$ERR" '{success: false, sent: false, reason: $r}'
|
|
75
|
+
exit 1
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
printf '%s' "$RESPONSE" | jq -c '.data as $d | {
|
|
79
|
+
success: true,
|
|
80
|
+
sent: true,
|
|
81
|
+
code: $d.code,
|
|
82
|
+
recipient: $d.recipient,
|
|
83
|
+
sentAt: (if $d.sentAt then (($d.sentAt / 1000) | floor | todate) else null end)
|
|
84
|
+
}'
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
#!/bin/bash
|
|
2
|
+
# Tests for whatsapp-send — run with: bash execute.test.sh </dev/null
|
|
3
|
+
# Spins up a python HTTP stub as the backend, asserts the request path the
|
|
4
|
+
# skill sends and the JSON it prints. Exit 0 on pass.
|
|
5
|
+
set -u
|
|
6
|
+
HERE="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
7
|
+
EXEC="$HERE/execute.sh"
|
|
8
|
+
PASS=0; FAIL=0
|
|
9
|
+
check() {
|
|
10
|
+
local name="$1"; local got="$2"; local want="$3"
|
|
11
|
+
if [ "$got" = "$want" ]; then PASS=$((PASS+1)); else FAIL=$((FAIL+1)); echo "FAIL: $name"; echo " want: $want"; echo " got: $got"; fi
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
PORT=18844
|
|
15
|
+
STUB_LOG="$(mktemp)"; export STUB_LOG; export STUB_PORT="$PORT"
|
|
16
|
+
python3 -u <<'PY' >/dev/null 2>&1 &
|
|
17
|
+
from http.server import BaseHTTPRequestHandler, HTTPServer
|
|
18
|
+
import json, os
|
|
19
|
+
LOG = os.environ['STUB_LOG']; PORT = int(os.environ['STUB_PORT'])
|
|
20
|
+
class H(BaseHTTPRequestHandler):
|
|
21
|
+
def reply(self, code, body):
|
|
22
|
+
self.send_response(code); self.send_header('Content-Type', 'application/json'); self.end_headers()
|
|
23
|
+
self.wfile.write(json.dumps(body).encode())
|
|
24
|
+
def do_POST(self):
|
|
25
|
+
self.rfile.read(int(self.headers.get('Content-Length', 0)))
|
|
26
|
+
open(LOG, 'w').write(json.dumps({'method': 'POST', 'path': self.path, 'agent': self.headers.get('X-Agent-Session')}))
|
|
27
|
+
if self.path == '/api/whatsapp/drafts/W12/send':
|
|
28
|
+
return self.reply(200, {'success': True, 'data': {'id': 'd-1', 'code': 'W12', 'status': 'sent', 'sentAt': 1760000000000, 'recipient': 'Ann', 'via': 'owner_confirmation'}})
|
|
29
|
+
if self.path == '/api/whatsapp/drafts/W13/send':
|
|
30
|
+
return self.reply(403, {'success': False, 'code': 'needs_owner_confirmation',
|
|
31
|
+
'error': 'The owner has not confirmed draft W13. Ask them to reply 「发 W13」.',
|
|
32
|
+
'data': {'code': 'W13', 'reason': 'no_confirmation'}})
|
|
33
|
+
if self.path == '/api/whatsapp/drafts/W14/send':
|
|
34
|
+
return self.reply(409, {'success': False, 'code': 'draft_not_pending', 'error': 'Draft W14 is sent; it cannot be sent'})
|
|
35
|
+
self.reply(404, {'success': False, 'code': 'draft_not_found', 'error': 'No draft'})
|
|
36
|
+
def log_message(self, *a, **k): pass
|
|
37
|
+
HTTPServer(('127.0.0.1', PORT), H).serve_forever()
|
|
38
|
+
PY
|
|
39
|
+
STUB_PID=$!
|
|
40
|
+
disown "$STUB_PID" 2>/dev/null || true
|
|
41
|
+
trap 'kill "$STUB_PID" >/dev/null 2>&1; rm -f "$STUB_LOG"' EXIT
|
|
42
|
+
for i in $(seq 1 30); do curl -s -o /dev/null -m 0.2 "http://127.0.0.1:${PORT}/" 2>/dev/null && break; sleep 0.1; done
|
|
43
|
+
|
|
44
|
+
run() { CREWLY_SESSION_NAME=test-agent CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" "$@" 2>/dev/null; }
|
|
45
|
+
run_err() { CREWLY_SESSION_NAME=test-agent CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" "$@" 2>&1 >/dev/null | jq -r '.error' 2>/dev/null; }
|
|
46
|
+
|
|
47
|
+
OUT=$(run --draft W12)
|
|
48
|
+
check "confirmed: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/drafts/W12/send"
|
|
49
|
+
check "confirmed: agent header" "$(jq -r .agent "$STUB_LOG")" "test-agent"
|
|
50
|
+
check "confirmed: output" "$OUT" '{"success":true,"sent":true,"code":"W12","recipient":"Ann","sentAt":"2025-10-09T08:53:20Z"}'
|
|
51
|
+
|
|
52
|
+
run '{"draft":"W12"}' >/dev/null
|
|
53
|
+
check "json: path" "$(jq -r .path "$STUB_LOG")" "/api/whatsapp/drafts/W12/send"
|
|
54
|
+
|
|
55
|
+
OUT=$(run --draft W13); RC=$?
|
|
56
|
+
check "unconfirmed: exit code" "$RC" "1"
|
|
57
|
+
check "unconfirmed: reason" "$(printf '%s' "$OUT" | jq -r .reason)" "needs_owner_confirmation"
|
|
58
|
+
check "unconfirmed: sent false" "$(printf '%s' "$OUT" | jq -r .sent)" "false"
|
|
59
|
+
MSG=$(printf '%s' "$OUT" | jq -r .message)
|
|
60
|
+
[[ "$MSG" == "NOT SENT: the owner has not confirmed."* && "$MSG" == *"「发 W13」"* ]] && OK=yes || OK=no
|
|
61
|
+
check "unconfirmed: clear message" "$OK" "yes"
|
|
62
|
+
|
|
63
|
+
OUT=$(run --draft W14); RC=$?
|
|
64
|
+
check "already sent: exit code" "$RC" "1"
|
|
65
|
+
check "already sent: reason" "$(printf '%s' "$OUT" | jq -r .reason)" "draft_not_pending"
|
|
66
|
+
|
|
67
|
+
# Anonymous calls would look like the owner to the backend — refused locally,
|
|
68
|
+
# and no request is made.
|
|
69
|
+
: > "$STUB_LOG"
|
|
70
|
+
ERR=$(CREWLY_SESSION_NAME= CREWLY_API_URL="http://127.0.0.1:${PORT}" bash "$EXEC" --draft W12 2>&1 >/dev/null | jq -r .error); RC=$?
|
|
71
|
+
[[ "$ERR" == "CREWLY_SESSION_NAME is not set."* ]] && OK=yes || OK=no
|
|
72
|
+
check "no session: refused" "$OK" "yes"
|
|
73
|
+
check "no session: no request made" "$(cat "$STUB_LOG")" ""
|
|
74
|
+
|
|
75
|
+
check "missing draft" "$(run_err)" "Missing required parameter: draft (--draft)"
|
|
76
|
+
check "unknown option errors" "$(run_err --force)" "Unknown option: --force"
|
|
77
|
+
|
|
78
|
+
echo "=== Results: $PASS passed, $FAIL failed ==="
|
|
79
|
+
[ "$FAIL" -eq 0 ]
|
|
@@ -2089,7 +2089,114 @@ export declare const WHATSAPP_CONSTANTS: {
|
|
|
2089
2089
|
readonly PHONE_PREFIX_PATTERN: RegExp;
|
|
2090
2090
|
/** Fallback timeout when MESSAGE_QUEUE_CONSTANTS is unavailable (ms) */
|
|
2091
2091
|
readonly DEFAULT_FALLBACK_TIMEOUT_MS: 120000;
|
|
2092
|
+
/**
|
|
2093
|
+
* Connection modes. `assistant` routes every incoming message to the
|
|
2094
|
+
* orchestrator and auto-replies (the original bridge). `inbox` reads the
|
|
2095
|
+
* owner's personal account, stores it locally and never sends anything
|
|
2096
|
+
* without the owner's explicit confirmation.
|
|
2097
|
+
*/
|
|
2098
|
+
readonly MODES: {
|
|
2099
|
+
readonly ASSISTANT: "assistant";
|
|
2100
|
+
readonly INBOX: "inbox";
|
|
2101
|
+
};
|
|
2102
|
+
/** Mode used by `POST /api/whatsapp/connect` when the body names none (owner decision) */
|
|
2103
|
+
readonly DEFAULT_CONNECT_MODE: "inbox";
|
|
2104
|
+
/**
|
|
2105
|
+
* Mode for the legacy `WHATSAPP_ENABLED=true` env path when neither
|
|
2106
|
+
* `WHATSAPP_MODE` nor a persisted connection names one — that path has
|
|
2107
|
+
* always meant the orchestrator assistant.
|
|
2108
|
+
*/
|
|
2109
|
+
readonly LEGACY_ENV_MODE: "assistant";
|
|
2110
|
+
/** Data directory under the Crewly home (`~/.crewly/whatsapp/`) */
|
|
2111
|
+
readonly DATA_DIR: "whatsapp";
|
|
2112
|
+
/** SQLite file holding the inbox (chats, messages, drafts) */
|
|
2113
|
+
readonly INBOX_DB_FILE: "inbox.db";
|
|
2114
|
+
/** Persisted connection config (mode, allowed contacts, auto-connect) */
|
|
2115
|
+
readonly CONNECTION_CONFIG_FILE: "connection.json";
|
|
2116
|
+
/** Group chat JID suffix */
|
|
2117
|
+
readonly GROUP_JID_SUFFIX: "@g.us";
|
|
2118
|
+
/** Phone-number user JID suffix */
|
|
2119
|
+
readonly USER_JID_SUFFIX: "@s.whatsapp.net";
|
|
2120
|
+
/** Linked-identity (LID) JID suffix used by newer WhatsApp addressing */
|
|
2121
|
+
readonly LID_JID_SUFFIX: "@lid";
|
|
2122
|
+
/** Pseudo-chat carrying status/stories — never part of the inbox */
|
|
2123
|
+
readonly STATUS_BROADCAST_JID: "status@broadcast";
|
|
2124
|
+
/** Baileys `messages.upsert` types: live (`notify`) and own/backfilled (`append`) */
|
|
2125
|
+
readonly UPSERT_TYPES: {
|
|
2126
|
+
readonly NOTIFY: "notify";
|
|
2127
|
+
readonly APPEND: "append";
|
|
2128
|
+
};
|
|
2129
|
+
/** Baileys `HistorySync.HistorySyncType.FULL` — the whole account history, skipped in inbox mode */
|
|
2130
|
+
readonly HISTORY_SYNC_TYPE_FULL: 2;
|
|
2131
|
+
/** History-sync messages older than this are not stored (inbox seeds recent history only) */
|
|
2132
|
+
readonly HISTORY_SYNC_MAX_AGE_MS: number;
|
|
2133
|
+
/** Stored message kinds */
|
|
2134
|
+
readonly MESSAGE_KINDS: {
|
|
2135
|
+
readonly TEXT: "text";
|
|
2136
|
+
readonly IMAGE: "image";
|
|
2137
|
+
readonly DOCUMENT: "document";
|
|
2138
|
+
readonly AUDIO: "audio";
|
|
2139
|
+
readonly VIDEO: "video";
|
|
2140
|
+
readonly STICKER: "sticker";
|
|
2141
|
+
readonly OTHER: "other";
|
|
2142
|
+
};
|
|
2143
|
+
/** Chat-name provenance, higher wins: pushName < chat/group subject < address-book name */
|
|
2144
|
+
readonly NAME_RANKS: {
|
|
2145
|
+
readonly NONE: 0;
|
|
2146
|
+
readonly PUSH_NAME: 1;
|
|
2147
|
+
readonly CHAT: 2;
|
|
2148
|
+
readonly CONTACT: 3;
|
|
2149
|
+
};
|
|
2150
|
+
/** Row caps for the read API: default and hard maximum per endpoint */
|
|
2151
|
+
readonly LIMITS: {
|
|
2152
|
+
readonly INBOX_DEFAULT: 20;
|
|
2153
|
+
readonly INBOX_MAX: 200;
|
|
2154
|
+
readonly CHATS_DEFAULT: 50;
|
|
2155
|
+
readonly CHATS_MAX: 500;
|
|
2156
|
+
readonly MESSAGES_DEFAULT: 50;
|
|
2157
|
+
readonly MESSAGES_MAX: 500;
|
|
2158
|
+
readonly SEARCH_DEFAULT: 20;
|
|
2159
|
+
readonly SEARCH_MAX: 200;
|
|
2160
|
+
readonly DRAFTS_DEFAULT: 100;
|
|
2161
|
+
readonly DRAFTS_MAX: 500;
|
|
2162
|
+
};
|
|
2163
|
+
/** Prefix of the short human draft code (`W12`) */
|
|
2164
|
+
readonly DRAFT_CODE_PREFIX: "W";
|
|
2165
|
+
/** Draft lifecycle. `sending` is the claim held while the socket call is in flight */
|
|
2166
|
+
readonly DRAFT_STATUSES: {
|
|
2167
|
+
readonly PENDING: "pending";
|
|
2168
|
+
readonly SENDING: "sending";
|
|
2169
|
+
readonly SENT: "sent";
|
|
2170
|
+
readonly DISCARDED: "discarded";
|
|
2171
|
+
};
|
|
2172
|
+
/**
|
|
2173
|
+
* How long after a draft is written an agent may send it on the strength of
|
|
2174
|
+
* the owner's 「发 W12」 chat message. After this the owner must send it from
|
|
2175
|
+
* the dashboard, or the agent drafts again.
|
|
2176
|
+
*/
|
|
2177
|
+
readonly DRAFT_CONFIRM_WINDOW_MS: number;
|
|
2178
|
+
/**
|
|
2179
|
+
* Owner confirmation message: 「发 W12」 / 「发送 12」 / "send #W12" / 「确认发送 W12」.
|
|
2180
|
+
* Group 2 is the draft code (with or without the W).
|
|
2181
|
+
*/
|
|
2182
|
+
readonly DRAFT_CONFIRM_PATTERN: RegExp;
|
|
2183
|
+
/** Owner messages scanned for a confirmation (newest first) */
|
|
2184
|
+
readonly OWNER_CONFIRM_SCAN_LIMIT: 200;
|
|
2185
|
+
/** Error codes returned by the inbox API */
|
|
2186
|
+
readonly ERROR_CODES: {
|
|
2187
|
+
readonly NEEDS_OWNER_CONFIRMATION: "needs_owner_confirmation";
|
|
2188
|
+
readonly AGENT_SEND_FORBIDDEN: "agent_send_forbidden_in_inbox_mode";
|
|
2189
|
+
readonly DRAFT_NOT_FOUND: "draft_not_found";
|
|
2190
|
+
readonly DRAFT_NOT_PENDING: "draft_not_pending";
|
|
2191
|
+
readonly CHAT_NOT_FOUND: "chat_not_found";
|
|
2192
|
+
readonly NOT_CONNECTED: "not_connected";
|
|
2193
|
+
readonly SEND_FAILED: "send_failed";
|
|
2194
|
+
readonly INVALID_MODE: "invalid_mode";
|
|
2195
|
+
readonly INVALID_INPUT: "invalid_input";
|
|
2196
|
+
};
|
|
2092
2197
|
};
|
|
2198
|
+
/** WhatsApp connection mode (see {@link WHATSAPP_CONSTANTS.MODES}) */
|
|
2199
|
+
export type WhatsAppMode = (typeof WHATSAPP_CONSTANTS.MODES)[keyof typeof WHATSAPP_CONSTANTS.MODES];
|
|
2093
2200
|
/** Google OAuth endpoint URLs and default scopes. */
|
|
2094
2201
|
export declare const GOOGLE_OAUTH_CONSTANTS: {
|
|
2095
2202
|
readonly AUTH_BASE_URL: "https://accounts.google.com/o/oauth2/v2/auth";
|
|
@@ -2772,6 +2879,124 @@ export declare const POOL_ARCHIVE_CONSTANTS: {
|
|
|
2772
2879
|
/** Terminal statuses that are archived once old enough */
|
|
2773
2880
|
readonly TERMINAL_STATUSES: readonly ["verified", "done", "failed", "cancelled"];
|
|
2774
2881
|
};
|
|
2882
|
+
/**
|
|
2883
|
+
* Harness onboarding (specs/onboarding-harness-login.md): detect, install and
|
|
2884
|
+
* log in to the agent CLIs ("harnesses") Crewly drives — Claude Code, Codex
|
|
2885
|
+
* and Gemini CLI. Shared by the backend REST API and the `crewly` CLI.
|
|
2886
|
+
*/
|
|
2887
|
+
export declare const HARNESS_CONSTANTS: {
|
|
2888
|
+
/** Harness ids; equal to the matching RUNTIME_TYPES values */
|
|
2889
|
+
readonly IDS: {
|
|
2890
|
+
readonly CLAUDE_CODE: "claude-code";
|
|
2891
|
+
readonly CODEX_CLI: "codex-cli";
|
|
2892
|
+
readonly GEMINI_CLI: "gemini-cli";
|
|
2893
|
+
};
|
|
2894
|
+
/** Harness the orchestrator uses when the owner does not choose */
|
|
2895
|
+
readonly DEFAULT_ORC_HARNESS: "claude-code";
|
|
2896
|
+
/** Short names accepted by `crewly login <name>` / `--harness <name>` */
|
|
2897
|
+
readonly CLI_ALIASES: {
|
|
2898
|
+
readonly claude: "claude-code";
|
|
2899
|
+
readonly codex: "codex-cli";
|
|
2900
|
+
readonly gemini: "gemini-cli";
|
|
2901
|
+
};
|
|
2902
|
+
/** Credentials file under the Crewly home dir */
|
|
2903
|
+
readonly CREDENTIALS_FILE: "harness-credentials.json";
|
|
2904
|
+
/** File mode for the credentials file (owner read/write only) */
|
|
2905
|
+
readonly CREDENTIALS_FILE_MODE: 384;
|
|
2906
|
+
/** User-owned npm prefix under the Crewly home dir, used when `npm install -g` hits EACCES */
|
|
2907
|
+
readonly USER_NPM_PREFIX_DIR: "npm-global";
|
|
2908
|
+
/** Extra bin dir where Claude Code's native installer puts `claude` (relative to $HOME) */
|
|
2909
|
+
readonly NATIVE_INSTALLER_BIN_DIR: ".local/bin";
|
|
2910
|
+
/** How long `npm view <pkg> version` results are cached */
|
|
2911
|
+
readonly LATEST_VERSION_CACHE_TTL_MS: number;
|
|
2912
|
+
/** How long a failed `npm view` is cached (so an offline machine is not re-probed per request) */
|
|
2913
|
+
readonly LATEST_VERSION_FAILURE_TTL_MS: number;
|
|
2914
|
+
/** Timeout for short probe commands (which, --version, login status) */
|
|
2915
|
+
readonly PROBE_TIMEOUT_MS: 15000;
|
|
2916
|
+
/** Timeout for `npm view` */
|
|
2917
|
+
readonly NPM_VIEW_TIMEOUT_MS: 20000;
|
|
2918
|
+
/** Timeout for one `npm install -g` attempt */
|
|
2919
|
+
readonly INSTALL_TIMEOUT_MS: number;
|
|
2920
|
+
/** Install log kept per job (tail) */
|
|
2921
|
+
readonly INSTALL_LOG_MAX_CHARS: 64000;
|
|
2922
|
+
/** Finished install jobs are forgotten after this long */
|
|
2923
|
+
readonly INSTALL_JOB_RETENTION_MS: number;
|
|
2924
|
+
/** npm output that means "no permission to write the global prefix" */
|
|
2925
|
+
readonly PERMISSION_ERROR_PATTERNS: readonly string[];
|
|
2926
|
+
/** Version-like token in `--version` output */
|
|
2927
|
+
readonly VERSION_PATTERN: RegExp;
|
|
2928
|
+
/** Length bounds for a pasted API key */
|
|
2929
|
+
readonly API_KEY_MIN_LENGTH: 20;
|
|
2930
|
+
readonly API_KEY_MAX_LENGTH: 512;
|
|
2931
|
+
/** Login broker (PTY running the harness's own login command) */
|
|
2932
|
+
readonly LOGIN: {
|
|
2933
|
+
/** A login session that has not finished by then is timed out */
|
|
2934
|
+
readonly TIMEOUT_MS: number;
|
|
2935
|
+
/** Very wide PTY so login URLs are not wrapped at the terminal width */
|
|
2936
|
+
readonly PTY_COLS: 1000;
|
|
2937
|
+
readonly PTY_ROWS: 50;
|
|
2938
|
+
/** Tail of normalized screen text exposed to front ends */
|
|
2939
|
+
readonly SCREEN_MAX_CHARS: 2000;
|
|
2940
|
+
/** Raw PTY output kept per session (tail) */
|
|
2941
|
+
readonly RAW_BUFFER_MAX_CHARS: 200000;
|
|
2942
|
+
/** Finished sessions stay readable for this long */
|
|
2943
|
+
readonly SESSION_RETENTION_MS: number;
|
|
2944
|
+
/** Timeout for the post-login verification command */
|
|
2945
|
+
readonly VERIFY_TIMEOUT_MS: 30000;
|
|
2946
|
+
/** Value for BROWSER in the broker env: a no-op command, so harnesses do not open a browser */
|
|
2947
|
+
readonly BROWSER_SUPPRESS_VALUE: "true";
|
|
2948
|
+
/** Replaces anything that looks like a token or key in exposed screen text */
|
|
2949
|
+
readonly REDACTED: "[redacted]";
|
|
2950
|
+
/** A line that is a piece of a captured secret is redacted when at least this long */
|
|
2951
|
+
readonly REDACT_MIN_FRAGMENT: 8;
|
|
2952
|
+
/** A URL line at least this long that ends at end-of-line may continue on the next line */
|
|
2953
|
+
readonly WRAPPED_LINE_MIN_LENGTH: 40;
|
|
2954
|
+
/** Keys typed after user input */
|
|
2955
|
+
readonly ENTER: "\r";
|
|
2956
|
+
};
|
|
2957
|
+
/** Claude Code facts */
|
|
2958
|
+
readonly CLAUDE: {
|
|
2959
|
+
readonly OAUTH_TOKEN_ENV: "CLAUDE_CODE_OAUTH_TOKEN";
|
|
2960
|
+
readonly API_KEY_ENV: "ANTHROPIC_API_KEY";
|
|
2961
|
+
readonly CONFIG_DIR_ENV: "CLAUDE_CONFIG_DIR";
|
|
2962
|
+
/** `~/.claude.json` (or `$CLAUDE_CONFIG_DIR/.claude.json`) */
|
|
2963
|
+
readonly CONFIG_FILE: ".claude.json";
|
|
2964
|
+
readonly DATA_DIR: ".claude";
|
|
2965
|
+
readonly CREDENTIALS_FILE: ".credentials.json";
|
|
2966
|
+
/** macOS keychain item Claude Code stores its login under */
|
|
2967
|
+
readonly KEYCHAIN_SERVICE: "Claude Code-credentials";
|
|
2968
|
+
/** Claude Code approves a custom API key by its last N characters */
|
|
2969
|
+
readonly API_KEY_APPROVAL_SUFFIX_LENGTH: 20;
|
|
2970
|
+
readonly API_KEY_PREFIX: "sk-ant-";
|
|
2971
|
+
/** Endpoint used to check a pasted Anthropic API key */
|
|
2972
|
+
readonly API_KEY_CHECK_URL: "https://api.anthropic.com/v1/models";
|
|
2973
|
+
readonly API_VERSION: "2023-06-01";
|
|
2974
|
+
readonly API_KEY_CHECK_TIMEOUT_MS: 10000;
|
|
2975
|
+
};
|
|
2976
|
+
/** Codex CLI facts */
|
|
2977
|
+
readonly CODEX: {
|
|
2978
|
+
readonly HOME_ENV: "CODEX_HOME";
|
|
2979
|
+
readonly HOME_DIR: ".codex";
|
|
2980
|
+
readonly AUTH_FILE: "auth.json";
|
|
2981
|
+
};
|
|
2982
|
+
/** Gemini CLI facts (detect only) */
|
|
2983
|
+
readonly GEMINI: {
|
|
2984
|
+
readonly OAUTH_CREDS_FILE: ".gemini/oauth_creds.json";
|
|
2985
|
+
readonly KEY_ENV: readonly string[];
|
|
2986
|
+
};
|
|
2987
|
+
/** System tools Crewly needs (tmux is not one: sessions use node-pty) */
|
|
2988
|
+
readonly SYSTEM_TOOLS: {
|
|
2989
|
+
readonly JQ: {
|
|
2990
|
+
readonly ID: "jq";
|
|
2991
|
+
readonly INSTALL_HINT_MACOS: "brew install jq";
|
|
2992
|
+
readonly INSTALL_HINT_LINUX: "sudo apt-get install -y jq (Fedora: sudo dnf install -y jq)";
|
|
2993
|
+
};
|
|
2994
|
+
};
|
|
2995
|
+
/** Orchestrator config under the Crewly home dir (same file StorageService uses) */
|
|
2996
|
+
readonly ORCHESTRATOR_CONFIG_SEGMENTS: readonly string[];
|
|
2997
|
+
/** Web setup page opened by `crewly onboard --web` */
|
|
2998
|
+
readonly WEB_SETUP_PATH: "/setup";
|
|
2999
|
+
};
|
|
2775
3000
|
/** License status type */
|
|
2776
3001
|
export type CloudLicenseStatus = (typeof CLOUD_AUTH_CONSTANTS.LICENSE_STATUS)[keyof typeof CLOUD_AUTH_CONSTANTS.LICENSE_STATUS];
|
|
2777
3002
|
export type AgentStatus = (typeof CREWLY_CONSTANTS.AGENT_STATUSES)[keyof typeof CREWLY_CONSTANTS.AGENT_STATUSES];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../backend/src/constants.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../backend/src/constants.ts"],"names":[],"mappings":"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"}
|