# Openloomi Loop

Openloomi's Loop, the proactive execution brain that runs inside the OpenLoomi desktop...

- Repository: https://github.com/melandlabs/openloomi (1038 stars)
- Category: Engineering
- License: Apache-2.0
- Last updated: 2026-09-24
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add melandlabs/openloomi --skill openloomi-loop -g -a claude-code -y`
Codex: `npx skills add melandlabs/openloomi --skill openloomi-loop -g -a codex -y`
Cursor: `npx skills add melandlabs/openloomi --skill openloomi-loop -g -a cursor -y`
Gemini CLI: `npx skills add melandlabs/openloomi --skill openloomi-loop -g -a gemini-cli -y`
Claude Code plugin marketplace: `/plugin marketplace add melandlabs/openloomi`

## Description

openloomi's Loop, the proactive execution brain that runs inside the OpenLoomi desktop app. Use this skill to inspect state, force-refresh connector health, run a tick, schedule / cancel decision actions, tune preferences, and extend Loop with user-defined decision types, Composio-backed signal channels, or deterministic classifier rules. Triggers: 'openloomi loop', 'loop tick', 'loop schedule', 'loop inbox', 'loop run', 'loop refresh', 'refresh connectors', 'force refresh connectors', 'check connections', 'check loop connectors', 'connector health', 'proactive decisions', 'signal → decision → execute', 'pull signals', 'decision queue', 'register loop type', 'add loop decision type', 'register custom channel', 'add composio channel', 'add loop rule', 'register classifier rule', 'force loop type', 'dry-run loop rule', 'list my loop extensions', 'remove loop type', 'delete loop channel

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

> **Note:** If you haven't downloaded or installed openloomi yet, please refer to [Getting Started](https://openloomi.ai/docs/getting-started) for installation instructions.

# OpenLoomi Loop, The Proactive Execution Brain

Loop pulls signals from connected integrations, classifies them into
typed decisions, and lets the user approve execution from the pet or
the web UI. This skill is a thin Codex-side wrapper around Loop's
HTTP API.

## Where things live

| Concern | Location |
|---|---|
| Business logic | Loop's TypeScript core (closed `DecisionType` + classifier + scheduler) |
| HTTP API | `/api/loop/*`, `state`, `decisions`, `decision/[id]`, `card/[id]`, `connectors`, `brief`, `wrap`, `tick`, `preferences`, `action/*`, `types`, `types/[id]`, `channels`, `channels/[id]`, `classifier-rules`, `classifier-rules/[id]`, `classifier-rules/dry-run` |
| Persistence | `~/.openloomi/loop/{signals.jsonl,decisions.json,status.json,connectors.json,config.json}` |
| Scheduler | Three `ScheduledJob` rows: `loop.tick`, `loop.brief`, `loop.wrap` (registered by the loop scheduler) |
| Pet surface | Tauri Rust thread `loomi-pet-decision-watcher` polls `decisions.json` mtime every 2s and emits `loop:state` / `loop:decision` to bubble + card webviews. The widget supports two built-in themes (`fox`, `capybara`) and a `presenting` state surfaced when a decision moves to `done` before the user has reviewed it, click the bubble to flip back to `happy`. User-editable theme config lives at `~/.openloomi/pet-config.json`. |

## Base URL

| Environment | Base |
|---|---|
| Local desktop (Tauri), default | `http://localhost:3414` |
| Dev server (`pnpm dev`, `pnpm tauri:dev`) | `http://localhost:3515` |

If unsure, start with `http://localhost:3414`. Loop ships inside the
desktop bundle; the dev port is only relevant when you're running
the web app standalone.

## Auth

The rest: https://github.com/melandlabs/openloomi/blob/HEAD/plugins/codex/skills/openloomi-loop/SKILL.md
