LO work system — park ideas, plan features, execute work, and ship with quality gates for Loosely Organized projects
Captures ideas and rich conversation context for later. Creates a backlog entry linked to a detailed conversation summary in .lo/park/. Use when user says "park this", "save this for later", "park", "remember this idea", or "/lo:park". Not for planning or execution — use /lo:plan to design, /lo:work to build.
Turns ideas into structured implementation plans. Context-aware — adapts depth based on conversation history, project status, and feature complexity. Creates backlog entries on the fly if needed. Delegates design thinking to superpowers:brainstorming and superpowers:writing-plans. Use when user says "plan this", "let's design this", "let's plan", or "/lo:plan". Not for execution — use /lo:work to build.
Scaffolds the .lo/ directory for a new LO project. Creates project.yml, initializes BACKLOG.md, and optionally reconciles GitHub automation. Use when user says "setup lo", "new lo project", "scaffold lo", "add lo to this repo", or "/lo:setup".
Quality pipeline for shipping completed work. Detects mode automatically from project status and branch name — fast mode pushes to main, feature mode opens a PR, release mode generates changelog and finalizes the release. Prunes done items from backlog. Use when user says "ship it", "done", "ready to merge", "push this", or "/lo:ship".
Captures reusable knowledge in .lo/solutions/ after completing work. Documents patterns, decisions, and techniques that could help in future projects. Use when user says "capture solution", "what did I learn", "save knowledge", "document pattern", or "/lo:solution". Also prompted after /lo:ship.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge. GitHub access is read-only (username + org membership).
Sign in to claimBased on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Claude Code plugin for managing work in Loosely Organized projects. Provides a complete work lifecycle: idea capture, planning, execution, knowledge capture, and a shipping pipeline.
Add the marketplace and install the plugin:
/plugin marketplace add looselyorganized/lo-plugin
/plugin install lo@looselyorganized
| Skill | Command | Purpose |
|---|---|---|
| setup | /lo:setup | Scaffold .lo/ directory |
| park | /lo:park | Capture ideas and conversation context for later |
| plan | /lo:plan | Brainstorm and design implementation plans |
| work | /lo:work | Execute plans with branch/worktree + parallel agents |
| ship | /lo:ship | Quality gates → commit → push/PR; also starts releases |
| status | /lo:status | Dashboard and lifecycle transitions with automation wizards |
| stream | /lo:stream | Milestone entries in .lo/STREAM.md |
| solution | /lo:solution | Capture reusable knowledge in .lo/solutions/ |
| Skill | Command | Purpose |
|---|---|---|
| stocktaper-design-system | — | Monochromatic, monospace, minimal design system for LO projects |
Install separately: /plugin install lo-design@looselyorganized
.lo/ ConventionVersion 0.6.0 — 2026-03-12
Every LO project repo contains a .lo/ directory at the repository root. This directory is the single source of truth for all project content that appears on the LO website. The website reads project data exclusively from Supabase, which is populated by a GitHub webhook that parses .lo/ on push.
Source-of-truth principle: The .lo/ directory in the project repo is canonical. The website never reads from the filesystem directly. Supabase is a cache of .lo/ content, kept in sync by webhooks. If Supabase and .lo/ disagree, .lo/ wins (re-sync fixes it).
Why not MDX in the website repo? Project content belongs with the project code. When an agent works on a project, it can update the brief or add a stream entry in the same commit as the code change. The website repo stays focused on presentation.
.lo/
├── project.yml # Project metadata (5 required fields, pure YAML)
├── BACKLOG.md # Feature and task backlog with ID counters
├── STREAM.md # Milestones only (single file, newest first)
├── park/ # Conversation captures (/lo:park)
├── work/ # In-progress feature/task plans (deleted on ship)
│ └── f001-feature-slug/
│ └── 001-phase-slug.md
├── solutions/ # Reusable knowledge captured after shipping
│ └── s001-topic-slug.md
All files use Markdown with YAML frontmatter (parsed by gray-matter). No MDX — .lo/ content is plain Markdown to keep the contract simple and parseable by any tool.
project.yml — Project MetadataThe root file. One per project. Pure YAML — no frontmatter delimiters, no markdown body.
Format:
id: "proj_166345da-d821-4b3a-abbc-e3a439925e85"
title: "Nexus"
description: "A coordination server for multi-agent engineering teams."
status: "build"
state: "public"
Required fields (all 5): id, title, description, status, state
No optional fields. Data previously stored in PROJECT.md has moved to canonical sources (git remote, package.json, CLAUDE.md, README.md).
Validation rules:
status must be one of: explore, build, open, closedstate must be one of: public, privateid format: proj_ + lowercase UUID v4STREAM.md — Project StreamSingle file containing milestones only, newest first. This is the project's milestone feed.
File format: YAML frontmatter (type: stream), then entries using XML tags for reliable parsing. Newest first.
---
type: stream
---
<entry>
date: 2026-02-15
title: "Prototype deployed to Railway"
version: "0.1.0"
<description>
First working deployment with Redis-backed coordination. API responds to health checks, WebSocket connections establish successfully.
</description>
</entry>
<entry>
date: 2026-01-15
title: "Project initialized"
<description>
Initial project scaffolding and architecture decisions.
</description>
</entry>
Entry metadata fields: date (required), title (required), version (optional, releases only), research (optional, comma-separated slugs)
Body: 1-3 sentences per entry inside <description> tags. Public-facing voice.
park/ — Conversation CapturesRich conversation summaries saved by /lo:park. When you've been discussing an idea and want to preserve the thinking without committing to planning, park it. The capture file preserves the flow of ideas, decisions, and open questions.
Filename convention: <id>-<slug>.md (e.g., f010-image-gen.md)
Format: Plain heading with date, followed by narrative capture. No YAML frontmatter.
work/ — In-Progress Worknpx claudepluginhub looselyorganized/lo-plugin --plugin loStockTaper design system — monochromatic, monospace, minimal visual language for Loosely Organized projects
AI-powered cascading development framework with design document system and multi-agent collaboration. Breaks down projects into Features (Mega Plan), Features into Stories (Hybrid Ralph), with auto-generated technical design docs, dependency-driven batch execution, Git Worktree isolation, and support for multiple AI agents (Codex, Amp, Aider, etc.).
Virtual development team: TDD, debugging, code review, backlog management, and proven workflow patterns
Unity Development Toolkit - Expert agents for scripting/refactoring/optimization, script templates, and Agent Skills for Unity C# development
Complete collection of battle-tested Claude Code configs from an Anthropic hackathon winner - agents, skills, hooks, and rules evolved over 10+ months of intensive daily use
Complete collection of 30 Claude Code skills for document processing, development, business productivity, and creative tasks
Comprehensive skill pack with 66 specialized skills for full-stack developers: 12 language experts (Python, TypeScript, Go, Rust, C++, Swift, Kotlin, C#, PHP, Java, SQL, JavaScript), 10 backend frameworks, 6 frontend/mobile, plus infrastructure, DevOps, security, and testing. Features progressive disclosure architecture for 50% faster loading.