| title | Omni Research Squad | |||
|---|---|---|---|---|
| created | 2026-02-09 | |||
| updated | 2026-02-09 | |||
| tags |
|
|||
| status | current |
The octopus family — specialized sub-agents that research, document, and review.
- Domain: Baileys internals, WebSocket protocol, JID/LID system, message types
- Focus areas: Anti-bot detection mechanisms, rate limiting, session management, multi-device protocol
- Output folder:
docs/research/baileys/ - Key question: How does WhatsApp detect bots, and what are the exact behavioral thresholds?
- Domain: WhatsApp Business API (official), Meta policies, compliance
- Focus areas: Business vs personal API differences, ban triggers, terms of service, feature gaps
- Output folder:
docs/research/whatsapp-business/ - Key question: What can the official Business API do that Baileys can't, and vice versa?
- Domain: Omni v2 internals, event system, NATS JetStream patterns
- Focus areas: Action queue design, plugin SDK, identity graph unification, channel abstraction
- Output folder:
docs/research/omni-internals/ - Key question: How should the action queue work to protect all instances automatically?
- Domain: All Omni docs, Obsidian vault maintenance
- Focus areas: Docs-code sync, stale content detection, cross-references, formatting
- Output folder: All of
docs/ - Key question: Are the docs accurate given the current state of the codebase?
- Omni (🐙) spawns sub-agents via
sessions_spawnwith specific research tasks - Each sub-agent gets a focused prompt with their domain context
- Sub-agents research (web search, code analysis, doc reading) and write findings to their output folder
- Findings use the
docs/templates/research-note.mdtemplate - Results are announced back to the main session when complete
- Omni (🐙) reviews, synthesizes, and acts on findings
# Example spawn commands (from Omni main session)
sessions_spawn(task="...", label="ink-research")
sessions_spawn(task="...", label="pearl-research")
sessions_spawn(task="...", label="coral-research")
sessions_spawn(task="...", label="scroll-readme-rewrite")
- Session labels:
{name}-researchor{name}-reviewor{name}-readme-rewrite - Commit messages:
docs(research/{domain}): {description}ordocs(readme): {description} - Branch: research stays on
main(docs only, no code changes)
When spawned for a README review, Scroll must:
- Read the current README.md
- Scan the codebase for drift:
packages/*/package.json— new/removed packagespackages/channel-*/src/capabilities.ts— channel feature changespackages/api/src/routes/v2/index.ts— new API routespackages/cli/src/index.ts— new CLI commandsapps/ui/src/App.tsx— new UI pages- Recent
git log --oneline -20— new features/fixes
- Verify all claims — never claim features that don't exist in code
- Rewrite stale sections — update only what changed, preserve what's accurate
- Commit to main —
docs(readme): {description} 📜 - Report back — summary of what changed + what's still accurate
Use Nano Banana Pro (Gemini image gen):
GEMINI_API_KEY="..." uv run /path/to/nano-banana-pro/scripts/generate_image.py \
--prompt "..." --filename "out.png" --resolution 1KKey is saved in ~/.openclaw/openclaw.json under skills.nano-banana-pro.env.