openloomi-tour
Walk a brand-new OpenLoomi user through the entire pipeline in one guided session: setup health → pet reaction → connector onboarding → run a Loop tick → inspect & approve a decision card → seed Memory → optionally register a custom Loop channel / classifier rule / decision type. Triggers: openloomi tour, guided tour, walk me through openloomi, show me everything, end-to-end demo, 带我看一下, 体验一下, 一条龙, 一键体验, first time using openloomi, what's next after setup.
git clone --depth 1 https://github.com/melandlabs/openloomi /tmp/openloomi-tour && cp -r /tmp/openloomi-tour/plugins/codex/skills/openloomi-tour ~/.claude/skills/openloomi-tourSKILL.md
# OpenLoomi Tour — Hands-on Walkthrough This skill is the **canonical first-run experience**. After `openloomi-setup` finishes and prints its post-ready walkthrough, the user can type **`@OpenLoomi tour`** (or any of the trigger phrases) and you'll run the same pipeline live, stopping between phases so the user can react. The tour is **interactive, idempotent, and skippable**. Each phase checks its own prerequisite and lets the user move on with `next` / `skip` / `back`. Nothing is destructive — if the user already did a phase, you re-confirm it and move on. --- ## Reference docs Quick links to the OpenLoomi docs that this tour draws from. Every phase below cites the relevant entries inline. | Topic | Doc | | --- | --- | | Getting started / install / one-time setup | <https://openloomi.ai/docs/getting-started> | | What OpenLoomi is (the pipeline in one page) | <https://openloomi.ai/docs/what-is-openloomi> | | Glossary — every term used here (Connector / Signal / Loop channel / Action Runner / etc.) | <https://openloomi.ai/docs/glossary> | | Loop engine — ticks, Decisions, cards, channels, classifier rules | <https://openloomi.ai/docs/loop> | | Loop — Approve / Edit Draft / dry-run anatomy of a Card | <https://openloomi.ai/docs/loop#approvals-and-dry-run> | | Memory — people / projects / notes / insights / Screen Capture | <https://openloomi.ai/docs/memory> | | Knowledge Base / Library — uploaded documents (PDF, DOCX, MD, …) | <https://openloomi.ai/docs/library> | | Connectors — Slack / Gmail / GitHub / Linear / Notion / HubSpot / … | <https://openloomi.ai/docs/connectors> | | Native messaging bots — Telegram / WhatsApp / iMessage / Feishu / DingTalk / QQ / WeChat | <https://openloomi.ai/docs/messaging-apps> | | Composio / Loop channel — OAuth broker for 1000+ apps | <https://openloomi.ai/docs/glossary#composio--loop-channel> | | Attention Agent — Loomi the fox, card bubbles, sprite states | <https://openloomi.ai/docs/attention-agent> | | Agent Runtimes — Claude / Codex / OpenCode / Hermes / OpenClaw | <https://openloomi.ai/docs/reference/agent-runtimes> | | Plugins — bridge from Claude Code / Codex into OpenLoomi | <https://openloomi.ai/docs/plugins> | | Automation / Proactive Tasks — recurring scheduled work | <https://openloomi.ai/docs/automation> | | Chat — conversational entry point (not Loop) | <https://openloomi.ai/docs/chat> | | Skills — reusable capabilities inside OpenLoomi | <https://openloomi.ai/docs/skills> | | Audit Log — every consequential moment recorded | <https://openloomi.ai/docs/privacy-security#audit-logs> | | Privacy & Security — local-first, AES-256, what's stored where | <https://openloomi.ai/docs/privacy-security> | | Changelog — what's new in each release | <https://openloomi.ai/docs/changelog> | ## Phase 0 — Pre-flight Before running any phase, do **three** things in this exact order: ```bash # 1. Readiness (sandbox-aware) node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" setup-status # 2. If loopbackAccessAmbiguous: true, refresh host probe outside sandbox node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" run-host-probe # 3. Confirm Codex runtime is the active default agent node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" codex-runtime-info ``` Decision tree: | Pre-flight outcome | Tour action | | --- | --- | | `ready: true`, `defaultAgent: codex` | Proceed straight to Phase 1 | | `ready: false`, `nextAction: setup` | Tell the user setup hasn't run yet. Offer to invoke `openloomi-setup` first, then return to tour | | `ready: false`, `OPENLOOMI_API_UNREACHABLE` | Re-run `run-host-probe` outside the sandbox; if still unreachable, surface the bridge's `hints[]` and stop | | `defaultAgent != codex` | Ask the user whether to switch to Codex runtime or tour anyway with the current provider | Print the user's current state in one line (mode, installed, default agent) before announcing Phase 1. --- ## Phase 1 — Pet reaction (always run) The pet is the **fastest, cheapest, safest** proof that the desktop is listening. Run all four "sight" states in sequence so the user sees the sprite set: ```bash node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" pet happy node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" pet thinking node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" pet working node "$SKILL_DIR/../../scripts/loomi-bridge.mjs" pet juggling ``` After each, say "Loomi just showed the `<state>` sprite — that proves the desktop is watching the pet watcher and accepting state changes from Codex." End by leaving the pet at `happy` (success-state feel). For the full state taxonomy, see the [Attention Agent](https://openloomi.ai/docs/attention-agent) doc; for the broader pipeline see the [Glossary](https://openloomi.ai/docs/glossary). If `POST /api/pet/state` returns "would have set state to X — pending OpenLoomi endpoint", note that the runtime is older than the bridge expects; the pet widget will catch up via the `~/.openloomi/loop/` file watcher anyway. --- ## Phase 2 — Onboarding & input sources (interactive) This is the first **real** action and the first place the user may have to do something in another window. There are **three** input paths; offer them all and let the user pick: > **A. Native bot** ([Telegram / WhatsApp / iMessage / Feishu / DingTalk > / QQ / WeChat](https://openloomi.ai/docs/messaging-apps)) — fastest, no browser OAuth. Best if you already use > one of those. > > **B. [Composio OAuth](https://openloomi.ai/docs/glossary#composio--loop-channel)** (Gmail / Slack / GitHub / Google Calendar / > Notion / Linear / HubSpot / LinkedIn / Jira / Asana / Discord / X) — > one browser click, works for the apps most people already have. Full list at [Connectors](https://openloomi.ai/docs/connectors). > > **C. [Screen memory](https://openloomi.ai/docs/memory) (macOS only)** — right-click the Loomi pet on the > desktop → **Open Settings** → enable **Screen Capture**. The global > capture shortcut (configurable in the same panel) summarises the >
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
Drive a native macOS app via the cua-driver CLI (default) or MCP server — snapshot its AX tree, click/type/scroll by element_index, verify via re-snapshot. Use when the user asks you to operate, drive, automate, or perform a GUI task in a real macOS application on the host (e.g. "open a file in TextEdit", "navigate to /Applications in Finder", "click the Save button in Numbers").
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of "Word doc", "word document", ".docx", or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a "report", "memo", "letter", "template", or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.
openloomi HTTP API reference (local-first, served from the OpenLoomi Desktop app at http://localhost:3414). Use when working with openloomi backend routes — auth, AI, files, integrations, RAG, memory, Loop, pet, workspace, platform callbacks. Triggers: API endpoints, backend routes, /api/*, local API, port 3414, integrations REST, OAuth start, RAG search, loop state, memory search, pet state, audit logs
openloomi Connectors tools - manage the native 7 messaging integrations and pair with the composio skill for the 1000+ apps OAuth layer (Slack, Discord, X, Gmail, Outlook, Google Calendar/Drive/Docs, GitHub, Notion, Linear, HubSpot, LinkedIn, Jira, Asana). Triggers: connect platform, integration status, list accounts, disconnect, list-accounts, status, connect, send-reply, native vs composio, 1000+ apps, list connections.
Use this when users ask about openloomi features, capabilities, or how to use it. Examples: 'openloomi 怎么用', '你能做什么', 'What can you do?', 'How does openloomi work?', 'Tell me about openloomi features', 'What platforms does openloomi support?', 'How do I use scheduled tasks?', 'What is Loop?', 'How does the attention agent work?', 'What is a Decision Card?', 'How do connectors work?', 'How do I extend Loop with custom types?', 'What is a classifier rule?', 'How do I plug openloomi into Claude Code / Codex?'
openloomi Memory tools - search and manage the holistic context (people, projects, decisions, knowledge base, chat insights). Triggers: memory search, knowledge base, search documents, list insights, who is John, what did we decide about X, tiered memory, knowledge graph, people/projects/decisions, search-all, conversation memory