16 Commits
Author SHA1 Message Date
CodeGhost21andGitHub 35f3b1c395 feat(tinyplace): resolve identity marketplace seller-side as web-only (#4920) (#5193) 2026-07-27 19:58:43 +05:30
Steven EnamakelandGitHub 9420a2983a revert(safety): remove Emergency Stop for desktop automation (#4600) (#5073) 2026-07-21 12:39:46 +03:00
f14573527b feat(safety): Emergency Stop for desktop automation (#4255) (#4600)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
Co-authored-by: M3gA-Mind <elvin@tinyhumans.ai>
2026-07-16 15:45:45 +05:30
49a3916d77 feat(orchestration): recognize Cursor & Windsurf as first-class harnesses (#4775)
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-14 05:30:55 +04:00
Steven EnamakelandGitHub a968f72b2b docs: remove stale plan/status docs and clean dangling references (#4508) 2026-07-04 11:55:50 -07:00
7811bb0ab8 feat(agentbox): GMI Cloud AgentBox marketplace adapter (#3620) (#3651)
Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
2026-06-15 19:02:51 -07:00
7d71b06711 [merge 5/5] docs: agent harness E2E coverage matrix + plan (#3471) (#3668)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
2026-06-15 17:01:37 -07:00
CodeGhost21andGitHub a7516a83bd feat(voice): global push-to-talk hotkey (#3090) (#3349) 2026-06-05 18:38:03 -04:00
CodeGhost21andGitHub 0112d889de feat(memory-tree): per-integration health strip (#2763) (#3230) 2026-06-02 15:15:37 -07:00
CodeGhost21andGitHub 873a74eaee fix(channels): honor chat_provider workload routing in channel runtime (#3098 sub-issue 1) (#3217) 2026-06-02 07:31:00 -07:00
CodeGhost21andGitHub 3cc25e4391 docs(spec): telegram remote-control phase 2 — inline approvals (#1805) (#2502) 2026-05-29 00:47:28 +05:30
62db85ef0d docs: add Operator MVP execution plan (#1470)
Co-authored-by: Jwalin Shah <jshah1331@gmail.com>
2026-05-10 23:20:14 -07:00
Steven EnamakelandGitHub 6b044a9456 docs: rewrite README + gitbooks around current product, add Developing section (#1384) 2026-05-08 21:18:20 -07:00
VectorJetandGitHub 319cfa73e2 Docs/yarn to pnpm (#938) 2026-04-26 10:28:36 -07:00
478c92e533 feat(commands): ⌘K palette + keyboard system + chat UX polish (#745)
- Implement command palette (⌘K) using cmdk and Radix Dialog with a global action registry.
- Add a keyboard shortcut system with a capture-phase hotkey manager and scope stack.
- Integrate seed navigation actions for Home, Chat, Intelligence, Skills, and Settings.
- Improve chat UX with a `useStickToBottom` hook for auto-scroll and fixed hydration errors.
- Refactor command UI to display shortcuts inline and remove the redundant help overlay.
- Fix Vite HMR connection issues within the Tauri/CEF environment.

Co-authored-by: Steven Enamakel <enamakel@tinyhumans.ai>
2026-04-23 22:52:54 -07:00
515c4f4b42 feat(imessage): testable tick harness + fix scanner never ingested (#746)
* fix(agent): orchestrator never sends users to external dashboards for connect

Agent was improvising guidance like 'open your Composio dashboard at
app.composio.dev' when users asked to connect a service, which is broken
UX for non-technical users. Add an explicit rule: route connect requests
to the in-app Settings → Connections path, never paste external URLs
or explain OAuth/Composio internals.

* plan: imessage live-tick harness

Plan doc for extracting run_single_tick from ScannerRegistry's
AppHandle-coupled loop, enabling unit tests with fake deps against
real chat.db and an ignored live-sidecar integration test.

Scaffolding only — code changes follow in subsequent commits.

Co-Authored-By: WOZCODE <contact@withwoz.com>

* feat(imessage): testable tick harness + fix scanner never ingested

Extract pure `run_single_tick` + `TickDeps` trait from `run_scanner`. Prod
path wraps in `HttpDeps`; tests use `FakeDeps` with real chat.db so the
scanner body runs without a Tauri AppHandle. Template for five more
Apple-native sources per the roadmap.

While running it end-to-end, two pre-existing bugs in the shipped scanner
surfaced — both had to be fixed for a tick to ever succeed:

1. `ScannerRegistry::ensure_scanner` called `tokio::spawn` from the Tauri
   `setup` hook, which runs before a Tokio reactor is active. Scanner
   task never spawned; main thread panicked with "no reactor running".
   Fix: `tauri::async_runtime::spawn`, which uses Tauri's own runtime.

2. `fetch_imessage_gate` used JSON pointer `/result/config/...` but the
   JSON-RPC `RpcOutcome` envelope nests one level deeper:
   `/result/result/config/...`. Gate always resolved to None, so every
   tick silently skipped even with iMessage connected. Fix: correct
   the pointer.

Verification: after both fixes, iMessage connected via
`openhuman.channels_connect` with `allowed_contacts=["*"]`, scanner
ingested 252 chat-day groups into `memory_docs` namespace
`imessage_default` — first successful ingest in the project's history.

Tests: 10 unit (9 existing + `skips_when_gate_disconnected`), 4 ignored
live-chat.db (2 existing + `run_single_tick_ingests_groups_from_real_chatdb`
+ `run_single_tick_keeps_cursor_on_group_failure`). All green.

Infra: `scripts/worktree-bootstrap.sh` — one-shot to init submodules,
symlink `.env`, build+stage sidecar, ensure tauri-cli. Worktrees didn't
inherit any of this, costing ~30 min of manual setup per branch.

Docs: `docs/superpowers/learnings/2026-04-21-imessage-harness-session.md`
captures what broke, why, and the debuggability ladder that would have
caught both bugs at merge time (launch-smoke CI, minimum).

Co-Authored-By: WOZCODE <contact@withwoz.com>

* chore(bootstrap): yarn install so husky hooks don't block push

Pre-push hook needs prettier; worktree had no node_modules. Friction
discovered pushing this branch.

Co-Authored-By: WOZCODE <contact@withwoz.com>

---------

Co-authored-by: Jwalin Shah <jshah1331@gmail.com>
Co-authored-by: WOZCODE <contact@withwoz.com>
2026-04-21 22:25:44 -07:00