Commit Graph

47 Commits

Author SHA1 Message Date
Peter Steinberger
a93fbf4af0 refactor: centralize config update logging 2026-01-23 04:01:26 +00:00
Al
f3af9be1af fix(session-memory): suppress user-visible confirmation message
The session-memory hook saves session context to memory files when /new is run,
which is useful internal housekeeping. However, the confirmation message that
was displayed to users (showing the file path) leaked implementation details.

This change removes the user-visible message while keeping the console.log
for debugging purposes. The hook continues to save session context silently.
2026-01-22 15:22:20 -05:00
Shadow
0835bc0c81 fix: enforce plugin config schemas (#1272) (thanks @thewilloftheshadow)
Co-authored-by: thewilloftheshadow <thewilloftheshadow@users.noreply.github.com>
2026-01-20 11:03:17 +00:00
Peter Steinberger
df8e949b05 refactor: normalize cli command hints 2026-01-20 07:43:00 +00:00
Peter Steinberger
b63055d8d2 refactor(logging): split config + subsystem imports 2026-01-19 00:15:44 +00:00
Gustavo Madeira Santana
8fddbe78cf CLI: streamline startup paths and env parsing
Add shared parseBooleanValue()/isTruthyEnvValue() and apply across CLI, gateway, memory, and live-test flags for consistent env handling.
Introduce route-first fast paths, lazy subcommand registration, and deferred plugin loading to reduce CLI startup overhead.
Centralize config validation via ensureConfigReady() and add config caching/deferred shell env fallback for fewer IO passes.
Harden logger initialization/imports and add focused tests for argv, boolean parsing, frontmatter, and CLI subcommands.
2026-01-18 23:10:39 +00:00
Peter Steinberger
91c6acd9fa fix: stabilize tests and logging 2026-01-18 18:43:31 +00:00
Nimrod Gutman
18a8e8928d feat(hooks): run boot.md on gateway startup 2026-01-18 11:50:25 +02:00
Peter Steinberger
ab7c16da1a chore(format): oxfmt 2026-01-18 07:14:40 +00:00
Peter Steinberger
409037af73 test: expand soul-evil coverage 2026-01-18 06:39:26 +00:00
Peter Steinberger
1bbf6ae72f chore(gate): fix lint and protocol 2026-01-18 06:31:02 +00:00
Peter Steinberger
65d6b897af docs: add soul-evil hook docs 2026-01-18 06:21:00 +00:00
Peter Steinberger
063a296b24 refactor: add hook guards and test helpers 2026-01-18 06:15:24 +00:00
Peter Steinberger
a1395f9856 feat: support plugin-managed hooks 2026-01-18 05:57:05 +00:00
Peter Steinberger
2ddb585956 refactor: expand bootstrap helpers and tests 2026-01-18 05:51:55 +00:00
Peter Steinberger
2668a2b7f5 chore(lint): fix unused vars and formatting 2026-01-18 05:38:23 +00:00
Peter Steinberger
39b5e0c208 feat: add bootstrap hook and soul-evil hook 2026-01-18 05:24:47 +00:00
Peter Steinberger
e196b86272 test: expand frontmatter coverage 2026-01-17 20:12:04 +00:00
Peter Steinberger
f459063f92 fix: improve frontmatter parsing 2026-01-17 19:56:10 +00:00
Sebastian Slight
e2c7879acc fix: handle multi-line metadata blocks in HOOK.md frontmatter
The frontmatter parser was using a simple line-by-line regex that only
captured single-line key-value pairs. This meant multi-line metadata
blocks (as used by bundled hooks) were not parsed correctly.

Changes:
- Add extractMultiLineValue() to handle indented continuation lines
- Use JSON5 instead of JSON.parse() to support trailing commas
- Add comprehensive test coverage for frontmatter parsing

Fixes #1113
2026-01-17 19:56:10 +00:00
Peter Steinberger
e7f8d047a2 style: run oxfmt 2026-01-17 08:00:05 +00:00
Peter Steinberger
aec3dfcd89 refactor: rename hooks docs and add tests 2026-01-17 07:32:54 +00:00
Peter Steinberger
372ce23423 feat: unify hooks installs and webhooks 2026-01-17 07:08:04 +00:00
Peter Steinberger
c27814437a style: apply oxfmt 2026-01-17 01:55:42 +00:00
Peter Steinberger
02034aefa3 feat: add internal hooks system 2026-01-17 01:31:57 +00:00
Peter Steinberger
9d28441c41 chore: migrate to oxlint and oxfmt
Co-authored-by: Christoph Nakazawa <christoph.pojer@gmail.com>
2026-01-14 15:02:19 +00:00
Peter Steinberger
2bcb81ab86 feat(hooks): allow gmail tailscale target URLs 2026-01-10 19:19:43 +01:00
Anton Sotkov
78418dd074 fix(gmail): keep tailscale serve path at root
The default Gmail hook path configured by `clawdbot hooks gmail setup` is `/gmail-pubsub`. Tailscale strips the mount path before proxying, so the request lands on `/` and the hook 404s under the default configuration.

When Tailscale is enabled, always listen on `/` internally and keep the public URL on the configured path (defaulting to `/gmail-pubsub`). This makes default and custom paths work reliably.

Alternative (not implemented here): call tailscale with a full target URL so the backend keeps the path, e.g. `tailscale funnel --set-path /gmail-pubsub http://127.0.0.1:8788/gmail-pubsub`. We did not take this path because it requires changing the CLI invocation to pass URLs (not ports) plus extra validation, which is a larger behavior change.
2026-01-10 18:51:12 +01:00
Peter Steinberger
4c6c0fd1c9 fix(ci): stabilize windows tests 2026-01-08 03:54:35 +00:00
Peter Steinberger
12347967f1 test: cover gmail tailscale error formatting 2026-01-07 03:16:52 +01:00
Peter Steinberger
8ff1d8356a fix: improve gmail tailscale errors 2026-01-07 03:10:35 +01:00
Peter Steinberger
be4a6743df style: format gmail watcher test 2026-01-06 01:46:59 +00:00
Peter Steinberger
46cab8c4bb fix: stop gmail watcher restart on bind error 2026-01-06 01:40:15 +00:00
Peter Steinberger
7b06f875c0 test: relax timeouts for slow runs 2026-01-05 01:36:30 +01:00
Peter Steinberger
f7cb3846f1 chore: rename project to clawdbot 2026-01-04 14:38:51 +00:00
Peter Steinberger
c3cf26e5fb fix: stabilize lint and test timeouts 2026-01-04 01:42:08 +01:00
Peter Steinberger
5e550e6abf chore: fix lint formatting 2026-01-03 14:57:49 +00:00
Peter Steinberger
a77d89c99d fix: resolve gcloud python path 2026-01-03 14:36:48 +00:00
Peter Steinberger
eea33dfc6a style: tidy imports and formatting 2026-01-03 12:35:23 +00:00
Peter Steinberger
a5340a920b feat: support configurable gateway port 2026-01-03 12:00:17 +01:00
Peter Steinberger
cf01d0344e chore: apply biome lint fixes 2026-01-03 05:10:09 +01:00
Jared Verdi
40e447dfd8 Gmail watcher: start when gateway (re)starts 2026-01-03 03:49:53 +01:00
Peter Steinberger
8e372ffacc style: format gmail hooks and tools 2025-12-24 23:11:14 +01:00
Peter Steinberger
87199c6e4f fix: auto gmail serve path for tailscale 2025-12-24 21:56:17 +00:00
Peter Steinberger
e6b3427315 chore: add gmail hook setup notes 2025-12-24 21:20:20 +00:00
Peter Steinberger
cb8ca484a5 chore: clarify gmail serve path 2025-12-24 21:20:20 +00:00
Peter Steinberger
e6dcc8be8f feat: add gmail hooks wizard 2025-12-24 19:48:35 +00:00