Peter Steinberger
8d888b426f
chore: format swift/ts and fix gateway lint
2025-12-09 17:11:25 +00:00
Peter Steinberger
b6bd39660f
IPC: rename relay socket to gateway.sock
2025-12-09 17:04:58 +00:00
Peter Steinberger
60a68aa136
Gateway: start providers and route sends to their surface
2025-12-09 16:38:43 +00:00
Peter Steinberger
464e4c1938
Gateway: honor verbose for Baileys and show log path
2025-12-09 16:33:04 +00:00
Peter Steinberger
796f630a7c
Status: color provider lines
2025-12-09 16:31:38 +00:00
Peter Steinberger
dc8f9e043d
Tests: cover gateway --force helpers
2025-12-09 16:31:28 +00:00
Peter Steinberger
6afcf43ff2
CLI: add gateway --force option
2025-12-09 16:28:26 +00:00
Peter Steinberger
e0ea7be499
Docs: rename relay command to gateway
2025-12-09 17:24:57 +01:00
Peter Steinberger
4bf968a45a
CLI: add gateway verbose flag
2025-12-09 17:17:58 +01:00
Peter Steinberger
e40f9c9730
Mac: launch gateway and add relay installer
2025-12-09 16:15:53 +00:00
Peter Steinberger
96be7c8990
tests: cover agent sequencing, tick watchdog, presence fingerprint
2025-12-09 17:05:47 +01:00
Peter Steinberger
72eb240c3b
gateway: harden ws protocol and liveness
2025-12-09 17:02:58 +01:00
Peter Steinberger
cf5769753a
Protocol: lint fixes for client/program
2025-12-09 15:18:34 +01:00
Peter Steinberger
d1217e84c7
CLI: remove relay/heartbeat legacy commands
2025-12-09 15:06:44 +01:00
Peter Steinberger
172ce6c79f
Gateway: discriminated protocol schema + CLI updates
2025-12-09 15:01:13 +01:00
Peter Steinberger
2746efeb25
WebChat: loopback snapshot hydration
2025-12-09 14:41:55 +01:00
Peter Steinberger
b2e7fb01a9
Gateway: finalize WS control plane
2025-12-09 14:41:41 +01:00
Peter Steinberger
fc1d58b631
WebChat: fix packaged root resolution
2025-12-09 04:36:15 +00:00
Peter Steinberger
d66a05dc41
RPC: route logs to stderr to keep stdout JSON clean
2025-12-09 04:30:22 +00:00
Peter Steinberger
998a5b080d
Update auto-reply and voice wake runtime
2025-12-09 04:15:01 +00:00
Peter Steinberger
39a0f54b0d
Runtime: drop bun support
2025-12-09 04:13:56 +00:00
Peter Steinberger
f0860ec145
chore(instances): harden presence refresh and fix lint
2025-12-09 04:51:54 +01:00
Peter Steinberger
cfd2c41c21
fix(rpc): keep stdout json-only
2025-12-09 04:34:11 +01:00
Peter Steinberger
6b8011228e
fix(presence): always seed self entry and log counts
2025-12-09 03:21:59 +00:00
Peter Steinberger
2cd27d0d4a
Relay: enforce single instance lock
2025-12-09 03:17:23 +00:00
Peter Steinberger
2177df51a8
feat(status): enrich session details
2025-12-09 03:00:10 +00:00
Peter Steinberger
38c4f4f76c
feat(instances): beacon on connect and relay self-entry
2025-12-09 03:57:08 +01:00
Peter Steinberger
8d8584849c
RPC: fix presence imports
2025-12-09 02:39:41 +00:00
Peter Steinberger
59a2cbefcb
RPC: extract stdio loop and tests
2025-12-09 02:37:04 +00:00
Peter Steinberger
c568284f1b
Build: fix RPC sendable params and CLI imports
2025-12-09 03:33:16 +01:00
Peter Steinberger
04f595cd97
Control: route health/heartbeat over RPC stdio
2025-12-09 02:26:08 +00:00
Peter Steinberger
99a3102134
Docs: voice overlay plan and fix web mocks
2025-12-09 03:25:55 +01:00
Peter Steinberger
e15475449c
fix merge; add control logging
2025-12-09 01:46:09 +00:00
Peter Steinberger
1969e78d54
feat: surface system presence for the agent
2025-12-09 02:25:37 +01:00
Peter Steinberger
3fe68a051a
fix: block partial replies on external chat surfaces
2025-12-09 01:48:12 +01:00
Peter Steinberger
5bfecc6152
fix: stop partial replies for whatsapp/telegram surfaces
2025-12-09 01:41:05 +01:00
Peter Steinberger
e44ed2681f
refactor: type tau rpc stream events
2025-12-09 01:41:05 +01:00
Peter Steinberger
27a545f79d
chore: harden rpc assistant streaming types
2025-12-09 01:41:05 +01:00
Peter Steinberger
73cc34467a
control: log incoming health requests
2025-12-09 00:38:42 +00:00
Peter Steinberger
ec1ff52dfb
control: reconnect on EOF and relax rpc text parse
2025-12-09 00:29:31 +00:00
Peter Steinberger
2761c40781
test: ensure tool events emit without verbose
2025-12-09 01:24:16 +01:00
Peter Steinberger
e981d90209
fix: always emit tool events
2025-12-09 01:22:50 +01:00
Peter Steinberger
f965e1c3ff
chore: single-source working state from agent events
2025-12-09 01:17:01 +01:00
Peter Steinberger
cf36f5a23b
chore: guard host runtime and simplify packaging
2025-12-09 00:59:56 +01:00
Peter Steinberger
34d2527606
chore: tidy agent event streaming types
2025-12-09 00:59:56 +01:00
Peter Steinberger
36c91c3984
relay: don't crash when webchat port is busy
2025-12-08 23:49:57 +00:00
Peter Steinberger
b7b1714f32
feat: forward tool/assistant events to agent bus
2025-12-09 00:44:30 +01:00
Peter Steinberger
371a30f08b
feat: stream tool/job events over control channel
2025-12-09 00:31:39 +01:00
Peter Steinberger
40dd23337c
feat: broadcast agent events over control channel
2025-12-09 00:28:03 +01:00
Peter Steinberger
594e837440
feat: emit job-state events from rpc
2025-12-09 00:18:14 +01:00
Peter Steinberger
05bd452f76
control: drop runtime export of type-only HeartbeatEventPayload
2025-12-08 23:15:33 +01:00
Peter Steinberger
e38bdd0d2d
control: seed events, add tests, update remote doc
2025-12-08 22:03:46 +01:00
Peter Steinberger
22996854f7
relay: add control channel and heartbeat stream
2025-12-08 21:50:24 +01:00
Peter Steinberger
ded106b9e3
ux: keep window in edit, add escape to cancel; fix lint drift
2025-12-08 20:22:56 +01:00
Peter Steinberger
ab448988ff
RPC: stream heartbeat events to menu
2025-12-08 20:18:54 +01:00
Peter Steinberger
db3b3ed9eb
fix: polish voice overlay and webchat lint
2025-12-08 17:32:34 +01:00
Peter Steinberger
a34ab1d36e
Webchat: clean server build and add ws types
2025-12-08 16:21:56 +00:00
Peter Steinberger
7144a0fb9b
Webchat: push updates over WebSocket
2025-12-08 16:19:33 +00:00
Peter Steinberger
636f2d659f
chore: tighten webchat types and formatting
2025-12-08 17:14:43 +01:00
Peter Steinberger
1ac6ab4428
Agent: add thinkingOnce flag
2025-12-08 16:12:24 +00:00
Peter Steinberger
dc3c82ad40
Webchat: sync thinking level with session
2025-12-08 16:10:14 +00:00
Peter Steinberger
c3f955d3f1
chore: fix lint warnings and formatting
2025-12-08 17:05:27 +01:00
Peter Steinberger
de70d82cea
fix(mac): surface health errors instead of pending
2025-12-08 16:50:20 +01:00
Peter Steinberger
90a0bb5acb
feat(cli): unify relay providers and heartbeat flag
2025-12-08 16:34:06 +01:00
Peter Steinberger
0e4379f075
Webchat: cap/ persist attachments and strip data URLs
2025-12-08 14:59:26 +00:00
Peter Steinberger
fedb15d5d0
Webchat: inline attachments to agent RPC and fix status compile
2025-12-08 14:46:33 +00:00
Peter Steinberger
ccc6bf05e8
status: read token usage from pi session logs
2025-12-08 14:46:15 +00:00
Peter Steinberger
52453eaeff
Webchat: run agent in-process for RPC
2025-12-08 14:14:00 +00:00
Peter Steinberger
ff3337feed
Webchat: resolve static root in packaged app
2025-12-08 14:07:20 +00:00
Peter Steinberger
17a6d716ad
Webchat: auto-start server and simplify config
2025-12-08 13:12:34 +00:00
Peter Steinberger
92457f7fab
Remote web chat tunnel and onboarding polish
2025-12-08 12:50:37 +01:00
Peter Steinberger
17fa2f4053
refactor(cli): drop tmux helpers and update help copy
2025-12-08 12:43:13 +01:00
Peter Steinberger
dc22661744
webchat: move serving to relay loopback and tunnel from mac app
2025-12-08 11:54:30 +01:00
Peter Steinberger
22ed7ea3f2
build: silence grammy type errors for mac packaging
2025-12-08 11:04:17 +01:00
Peter Steinberger
f65702a8a8
chore(ci): fix lint and swiftformat failures
2025-12-08 01:48:53 +01:00
Peter Steinberger
1595fb8739
docs: move grammY research note to docs/grammy.md
2025-12-07 22:53:58 +01:00
Peter Steinberger
5f5846a08b
Telegram: enable grammY throttler and webhook tests
2025-12-07 22:52:57 +01:00
Peter Steinberger
4d3d9cca2a
Add Bun bundle docs and Telegram grammY support
2025-12-07 22:47:05 +01:00
Peter Steinberger
d73d571f19
Launch agent: disable autostart without killing running app
2025-12-07 19:01:14 +01:00
Peter Steinberger
d463c82c95
build: add local node bin to restart script PATH
2025-12-07 19:01:14 +01:00
Peter Steinberger
7efa152418
VoiceWake: document escape path and reset stale forward command
2025-12-07 18:23:34 +01:00
Peter Steinberger
e2c6546b61
auto-reply: enrich chat status
2025-12-07 16:53:33 +00:00
Peter Steinberger
b30db08110
feat: add heartbeat toggle with live RPC control
2025-12-07 15:32:48 +01:00
Peter Steinberger
2dbef6105d
agent: allow deliver when json output
2025-12-07 15:16:55 +01:00
Peter Steinberger
67fa82cf14
agent: deliver via rpc and voice forward
2025-12-07 06:05:00 +01:00
Peter Steinberger
67c67dd86d
Docs: swap to obviously fake phone numbers
2025-12-07 04:42:58 +00:00
Peter Steinberger
1190b9c278
Health: strengthen probe tests
2025-12-07 04:39:24 +00:00
Peter Steinberger
cb5c932447
Health: CLI probe and mac UI surfacing
2025-12-07 04:38:20 +00:00
Peter Steinberger
2714ed503b
CLI: add health probe command
2025-12-07 04:33:22 +00:00
Peter Steinberger
0a9b98ed67
feat(cli): add stdin/stdout rpc loop for agent sends
2025-12-07 05:10:58 +01:00
Peter Steinberger
31f788eb5e
CLI: allow --provider flag for login/logout (default whatsapp)
2025-12-07 03:41:27 +00:00
Peter Steinberger
6c3d3b98b8
chore: purge warelay references
2025-12-07 03:36:57 +00:00
Peter Steinberger
1a10569f6d
Logging: use /tmp/clawdis for default pino logs
2025-12-07 03:32:37 +00:00
Peter Steinberger
4b6325908b
feat: unify main session and icon cues
2025-12-06 23:16:23 +01:00
Peter Steinberger
fbf5333b39
chore: run formatters and lint
2025-12-06 04:03:48 +01:00
Peter Steinberger
e863fd78d6
CLI: compact sessions table output
2025-12-06 00:49:21 +00:00
Peter Steinberger
ddfb76e9e0
fix: bundle pi dependency and directive handling
2025-12-06 00:49:46 +01:00
Peter Steinberger
28e0dbc02f
fix: harden directive handling
2025-12-05 23:43:30 +00:00
Peter Steinberger
3c64a57c84
revert prompt-too-long fallback and keep inline directives
2025-12-05 23:18:03 +00:00
Peter Steinberger
36b0796976
fix: handle prompt-too-long by resetting session and continuing inline directives
2025-12-05 23:01:37 +00:00
Peter Steinberger
3241d81ce5
fix: allow inline directives to continue and add mixed-message test
2025-12-05 22:57:52 +00:00
Peter Steinberger
d7a188fb34
fix: broaden prompt-echo guard and add heartbeat directive test
2025-12-05 22:56:07 +00:00
Peter Steinberger
5b217b2042
fix: suppress heartbeat directive acks and add coverage
2025-12-05 22:54:17 +00:00
Peter Steinberger
4cb2a92037
fix: avoid echoing prompts when rpc returns empty
2025-12-05 22:52:21 +00:00
Peter Steinberger
24d90c17c2
fix: ignore directives inside history blocks
2025-12-05 22:49:41 +00:00
Peter Steinberger
c95c6d72e9
test: cover directive parsing and abort/restart prefixes
2025-12-05 22:29:49 +00:00
Peter Steinberger
99b174f495
fix: avoid directive hits inside URLs and add tests
2025-12-05 22:28:36 +00:00
Peter Steinberger
690113dd73
Add bundled pi default and session token reporting
2025-12-05 23:18:43 +01:00
Peter Steinberger
fe87160b19
chore: add system marker to directives and abort
2025-12-05 21:37:11 +00:00
Peter Steinberger
dc02bcee74
fix: normalize directive triggers and short-circuit
2025-12-05 21:29:41 +00:00
Peter Steinberger
e7a9313135
chore: remove twilio and expand pi cli detection
2025-12-05 21:13:23 +00:00
Peter Steinberger
5492845659
feat: stream turn completions and tighten rpc timeout
2025-12-05 21:13:17 +00:00
Peter Steinberger
29dfe89137
chore: redact long texts in web logs
2025-12-05 19:21:23 +00:00
Peter Steinberger
0da3f84a2e
fix: ignore rpc toolcall deltas to avoid duplicate replies
2025-12-05 19:16:03 +00:00
Peter Steinberger
7c7314f673
chore: drop twilio and go web-only
2025-12-05 19:03:59 +00:00
Peter Steinberger
869cc3d497
Route pi agent prompts via RPC stdin
2025-12-05 18:34:05 +00:00
Peter Steinberger
f315bf074b
fix: harden pi rpc prompt handling
2025-12-05 18:24:45 +00:00
Peter Steinberger
fcf0c28132
chore: make pi-only rpc with fixed sessions
2025-12-05 17:50:02 +00:00
Peter Steinberger
b3e50cbb33
Switch to clawdis RPC mode and complete rebrand
2025-12-05 17:22:53 +00:00
Peter Steinberger
20cb709ae3
chore: organize imports after rebrand
2025-12-04 18:02:51 +00:00
Peter Steinberger
916a41ed60
branding: default to clawdis paths and launchd label
2025-12-04 18:01:30 +00:00
Peter Steinberger
04ce98148d
web: fix mentioned JID extraction typing
2025-12-04 17:54:51 +00:00
Peter Steinberger
34eb75f634
auto-reply: honor /new after timestamp prefixes
2025-12-04 17:54:20 +00:00
Peter Steinberger
05b76281f7
CLI: add agent command for direct agent runs
2025-12-04 17:54:20 +00:00
Eng. Juan Combetto
4a35bcec21
fix: resolve lint errors (unused vars, imports, formatting)
...
- Prefix unused test variables with underscore
- Remove unused piSpec import and idleMs class member
- Fix import ordering and code formatting
2025-12-04 16:15:17 +00:00
Eng. Juan Combetto
518af0ef24
config: support clawdis.json path for rebranding
...
- Add CONFIG_PATH_CLAWDIS (~/.clawdis/clawdis.json) as preferred path
- Keep CONFIG_PATH_LEGACY (~/.warelay/warelay.json) for backward compatibility
- Update loadConfig() to check clawdis.json first, fallback to warelay.json
- Fix TypeScript type error in extractMentionedJids (null handling)
Part of the warelay → clawdis rebranding effort.
2025-12-04 16:15:17 +00:00
Peter Steinberger
a155ec0599
auto-reply: handle group think/verbose directives
2025-12-04 02:29:32 +00:00
Peter Steinberger
7bc56d7cfe
test: cover verbose directive in group batches
2025-12-03 15:45:43 +00:00
Peter Steinberger
088bdb3313
fix: allow directive-only toggles inside group batches
2025-12-03 15:45:43 +00:00
Peter Steinberger
07f323222b
fix(web): capture mentions from media captions
2025-12-03 15:45:43 +00:00
Peter Steinberger
a321bf1a90
fix(web): surface media fetch failures
2025-12-03 15:45:43 +00:00
Peter Steinberger
e878780808
auto-reply: single emoji per verbose tool line
2025-12-03 15:45:43 +00:00
Peter Steinberger
cb5f1fa99d
auto-reply: emoji + result preview for verbose tool calls
2025-12-03 15:45:43 +00:00
Peter Steinberger
b55ac994ea
feat(web): prime group sessions with member roster
2025-12-03 15:45:43 +00:00
Peter Steinberger
3a8d6b80e0
auto-reply: surface tool args from rpc start events
2025-12-03 15:45:43 +00:00
Peter Steinberger
edc894f6c7
fix(web): annotate group replies with sender
2025-12-03 13:25:34 +00:00
Peter Steinberger
f68714ec8e
fix(web): unwrap ephemeral/view-once and keep mentions
2025-12-03 13:15:46 +00:00
Peter Steinberger
7be9352a3a
test(web): ensure group messages carry sender + bypass allowFrom
2025-12-03 13:12:05 +00:00
Peter Steinberger
3a782b6ace
fix(web): let group pings bypass allowFrom
2025-12-03 13:11:01 +00:00
Peter Steinberger
8204351d67
fix(web): allow group replies past allowFrom
2025-12-03 13:08:54 +00:00
Peter Steinberger
4c3635a7c0
logging: route console output into pino
2025-12-03 13:07:47 +00:00
Peter Steinberger
7ea43b0145
fix(web): detect self number mentions in group chats
2025-12-03 12:43:20 +00:00
Peter Steinberger
6afe6f4ecb
feat(web): add group chat mention support
2025-12-03 12:35:18 +00:00
Peter Steinberger
0824873ffb
Add /restart WhatsApp command to restart warelay
2025-12-03 12:14:32 +00:00
Peter Steinberger
8f99b13305
Pi: stream tool results faster (0.5s, flush after 5)
2025-12-03 12:08:58 +00:00
Peter Steinberger
9253702966
Pi: stream assistant text during RPC runs
2025-12-03 11:50:49 +00:00
Peter Steinberger
3958450223
Tau RPC: resolve on agent_end or exit
2025-12-03 11:34:00 +00:00
Peter Steinberger
cc596ef011
Pi: resume Tau sessions with --continue
2025-12-03 11:33:51 +00:00
Peter Steinberger
8220b11770
Tau RPC: wait for agent_end when tools run
2025-12-03 11:29:12 +00:00
Peter Steinberger
62c54cd47c
Web: simplify logout message
2025-12-03 11:04:12 +00:00
Peter Steinberger
e34d0d69aa
Chore: satisfy lint after tool-meta refactor
2025-12-03 10:42:10 +00:00
Peter Steinberger
597e7e6f13
Refactor: extract tool meta formatter + debouncer
2025-12-03 10:30:01 +00:00
Peter Steinberger
b460fd61bd
Verbose: shorten meta paths when aggregating
2025-12-03 10:26:41 +00:00
Peter Steinberger
c9b5df8184
Verbose: collapse tool meta paths by directory
2025-12-03 10:24:41 +00:00
Peter Steinberger
b6b5144ddf
Verbose: slow tool batch window to 1s
2025-12-03 10:13:02 +00:00
Peter Steinberger
deac5ff585
Verbose: shorten home paths in tool meta
2025-12-03 10:12:27 +00:00
Peter Steinberger
38a03ff2c8
Verbose: batch rapid tool results
2025-12-03 10:11:41 +00:00
Peter Steinberger
527bed2b53
Verbose: include tool arg metadata in prefixes
2025-12-03 09:57:41 +00:00
Peter Steinberger
318166f8b0
Verbose: send tool result metadata only
2025-12-03 09:40:05 +00:00
Peter Steinberger
394c751d7d
Tau RPC: resolve on agent_end
2025-12-03 09:39:26 +00:00
Peter Steinberger
c3792db0e5
Auto-reply: stream verbose tool results via tau rpc
2025-12-03 09:21:31 +00:00
Peter Steinberger
16e42e6d6d
Auto-reply: show tool results before main reply in verbose mode
2025-12-03 09:14:10 +00:00
Peter Steinberger
53c1674382
Chore: format + lint fixes
2025-12-03 09:09:34 +00:00
Peter Steinberger
ae0d35c727
Auto-reply: add verbose session hint
2025-12-03 09:07:17 +00:00
Peter Steinberger
086dd284d6
Auto-reply: add /verbose directives and tool result replies
2025-12-03 09:04:37 +00:00
Peter Steinberger
8ba35a2dc3
Auto-reply: treat prefixed think directives as directive-only
2025-12-03 08:57:30 +00:00
Peter Steinberger
48dfb1c8ca
Auto-reply: ack think directives
2025-12-03 08:54:38 +00:00
Peter Steinberger
58520859e5
Auto-reply: add thinking directives
2025-12-03 08:45:23 +00:00
Peter Steinberger
c4b0155cc2
Format: align thinking helpers
2025-12-03 01:02:10 +00:00
Peter Steinberger
38b18202fc
Heartbeat: guard optional heartbeatCommand
2025-12-03 00:45:27 +00:00
Peter Steinberger
0f17a7d828
Heartbeat: normalize reply arrays for twilio/web
2025-12-03 00:43:28 +00:00
Peter Steinberger
9da5b9f4bb
Heartbeat: normalize array replies
2025-12-03 00:40:19 +00:00
Peter Steinberger
a7fdc7b992
Auto-reply: allow array payloads in signature
2025-12-03 00:35:57 +00:00
Peter Steinberger
f519e22e6d
CI: fix command-reply payload typing
2025-12-03 00:33:58 +00:00
Peter Steinberger
ecac4dd72a
Auto-reply: format and lint fixes
2025-12-03 00:30:05 +00:00
Peter Steinberger
b6c45485bc
Auto-reply: smarter chunking breaks
2025-12-03 00:25:01 +00:00
Peter Steinberger
ec46932259
web: handle multi-payload replies
2025-12-02 23:46:11 +00:00
Peter Steinberger
10182f1182
limits: chunk replies for twilio/web
2025-12-02 23:10:16 +00:00
Peter Steinberger
cfaec9d608
auto-reply: support multi-text RPC outputs
2025-12-02 23:03:55 +00:00
Peter Steinberger
0f6157a49d
logging: emit agent/session meta at command start
2025-12-02 21:30:28 +00:00
Peter Steinberger
1df6373cb1
revert: mark system prompt sent on first turn
2025-12-02 21:23:56 +00:00
Peter Steinberger
96722bba08
ci: fix lint and tau rpc typing
2025-12-02 21:12:51 +00:00
Peter Steinberger
4e20a20927
fix(media): clean up files after response finishes
2025-12-02 21:10:18 +00:00
Peter Steinberger
a0d1004909
test(media): add redirect coverage and update changelog
2025-12-02 21:09:26 +00:00
Peter Steinberger
2018c90ae2
chore: tidy claude prompt and drop npm lock
2025-12-02 21:07:37 +00:00
Joao Lisboa
793360c5bb
style: fix biome formatting
2025-12-02 21:07:13 +00:00
Joao Lisboa
d8b1a38350
style: fix biome lint errors
2025-12-02 21:07:13 +00:00
Joao Lisboa
499a3e3227
style: fix biome formatting
2025-12-02 21:07:13 +00:00
Joao Lisboa
73a9fdca2a
fix: send Claude identity prefix on first session message
...
The systemSent variable was being set to true before being passed to
runCommandReply, causing the identity prefix to never be injected.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 21:07:13 +00:00
Joao Lisboa
06dd9b8ed8
fix: follow redirects when downloading Twilio media
...
node:https request() doesn't follow redirects by default, causing
Twilio media URLs (which 302 to CDN) to save placeholder/metadata
instead of actual images.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 21:07:13 +00:00
Joao Lisboa
a86cb932cf
chore: user-agnostic Claude identity and tests
...
- Use ~/Clawd instead of hardcoded /Users/steipete/clawd
- Add MEDIA: syntax instructions to identity prefix
- Update tests to check for 'scratchpad' instead of specific path
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 21:07:13 +00:00
Joao Lisboa
2fae0a9f47
fix: media serving and id consistency
...
- server.ts: Replace sendFile with manual readFile+send to fix
NotFoundError when serving media (sendFile failed even after stat)
- store.ts: Return id with file extension so it matches actual filename
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 21:07:13 +00:00
Joao Lisboa
2ec9192010
fix: use export type for type-only re-exports
...
Fixes build error with isolatedModules.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 21:06:27 +00:00
Peter Steinberger
b172b538fc
perf(pi): reuse tau rpc for command auto-replies
2025-12-02 20:09:51 +00:00
Peter Steinberger
2cf134668c
fix(media): block symlink traversal
2025-12-02 18:37:15 +00:00
Joao Lisboa
b94b220156
Fix path traversal vulnerability in media server
...
The /media/:id endpoint was vulnerable to path traversal attacks.
Since this endpoint is exposed via Tailscale Funnel (unlike the
WhatsApp webhook which requires Twilio signature validation),
attackers could directly request paths like /media/%2e%2e%2fwarelay.json
to access sensitive files in ~/.warelay/ (e.g. warelay.json), or even
escape further to the user's home directory via multiple ../ sequences.
Fix: validate resolved paths stay within the media directory.
🤖 Generated with [Claude Code](https://claude.com/claude-code )
Co-Authored-By: Claude <noreply@anthropic.com>
2025-12-02 19:33:21 +01:00
Peter Steinberger
26921cbe68
chore(logs): rotate daily and prune after 24h
2025-12-02 17:11:43 +00:00
Peter Steinberger
8844674825
chore(security): purge session store on logout
2025-12-02 16:33:44 +00:00
Peter Steinberger
c9fbe2cb92
chore(security): harden ipc socket
2025-12-02 16:09:40 +00:00
Peter Steinberger
ed080ae988
Tests: cover agents and fix web defaults
...
Co-authored-by: RealSid08 <RealSid08@users.noreply.github.com>
2025-12-02 11:08:00 +00:00