Generated banner for Superself
Generated logo for Superself

Superself

Seth HobsonCommunityCreated by fxylabsDistributed by Seth Hobson

  • Skill
  • Tool integration
  • Automation and integrations
  • MIT
  • Low risk

From the author

Use when a project keeps its state in Superself (a `<!-- superself:begin` block in AGENTS.md or CLAUDE.md, or `self setup` resolves the directory to a registered project): read `self context` at session start, attach work to a work unit, report with evidence, and record confirmed decisions so the next session picks up where this one left off.
— the description by fxylabs

AutoGineer summary

Written by AutoGineer from the skill’s own files, not by the author

Superself is a tool for version-controlling project state as an append-only event log. This skill enables an agent to interact with the Superself CLI to maintain project goals, track work units, record decisions, and generate reports. By using this skill, the agent ensures that project context is preserved across sessions, allowing for seamless continuity in development workflows.

What it does

  • Retrieves current project context, goals, and active work units.
  • Creates and manages work units with specific outcomes.
  • Records progress reports linked to git commits or files.
  • Logs confirmed project decisions and rationales.
  • Handles project setup and registration within the workspace.
  • Provides access to detailed topic guides for CLI operations.

When to use it

  • When a project contains a Superself configuration block in AGENTS.md or CLAUDE.md.
  • At the start of a session to load the current project context.
  • When documenting completed work or reporting progress on a task.
  • When a new decision is reached that needs to be recorded for future reference.
  • When a project needs to be initialized or connected to the Superself store.

Advantages

  • Maintains a persistent, machine-readable history of project state.
  • Ensures continuity by capturing context that would otherwise be lost.
  • Provides verifiable evidence for completed work units.
  • Separates project state management from the codebase.
  • Standardizes how decisions and work progress are tracked.

Usage examples

“Initialize this project with Superself.”
The agent runs self setup to check for a registered project, then asks the user for permission to run self project init or self connect.
“I have finished the authentication module, what should I do?”
The agent uses self report to attach the current commit as evidence to the relevant work unit and then calls self work done.

Install

  1. Download the skill as a ZIP:

    https://autogineer.com/agent-skills/wshobson/superself/download
  2. Unzip it into the cross-client skills folder of your project:

    mkdir -p .agents/skills && unzip superself.zip -d .agents/skills

Documentation by fxylabs

Superself

Superself is an Apache-2.0 CLI (npm install -g [email protected], Node 22.12+) that version-controls a project's state — goals, decisions, work units, reports — as an append-only event log in a git repository separate from the code. The state is derived on demand, so nothing in it is hand-maintained. This skill tells an agent how to read and write that state through the self CLI. It is maintained by the Superself authors: https://github.com/fxylabs/superself

When this skill applies

  • The project's AGENTS.md or CLAUDE.md contains a block between <!-- superself:begin and <!-- superself:end -->, or self setup prints the workspace, project, and store this directory resolves to.

  • Skip the skill when self --version fails: the project does not use Superself, and nothing below should be invented by hand. This skill is written against [email protected]; a different major or minor version may have moved a verb or flag, so check self <command> --help before relying on one.

Session start

  1. Run self context and treat its output as current truth: the goal, active decisions and conventions, open work, recent reports. It is folded from the log, never written by hand.

  2. Something missing from context was placed out of the rendered set on purpose; self search <query> finds live records context left out, and self work show <id> prints one unit's full brief and report history.

While working

  • Substantive work attaches to a work unit. Create one with self work add "<required outcome>" — the outcome is what must become true, not the task — then self work start <id>. start reads the brief and records that this session picked the unit up; if another session holds it, the CLI says who and since when and does not refuse. Judge and proceed.

  • After committing, report progress: self report <id> "<what happened>". The current HEAD commit is attached as evidence automatically; --evidence <commit|note> attaches something else, --file <path> attaches a longer brief.

  • Record a decision the user confirmed: self decide "<text>" --why "<reason>". Use --proposed when the user has not confirmed it. One decision per event.

  • Blocked? self work block <id> --on decision|dependency|external --why "...". Superseded or moved? self work retire <id> --why "..." [--successor <id>]. Never mark such a unit done, and never leave it falsely blocked.

  • Found a gap between an objective and the current state? Propose the work with self work propose and its brief; the user accepts or declines it.

  • The user approved a next step or a continuation? Register it at once with self work add and the context behind it. A plan that lives only in the conversation is lost when the conversation ends.

Closing

  • self work done <id> closes a unit only when a report carries a commit or an artifact, or the done itself states what verifiably happened: self work done <id> --report "<what verifiably happened>". A bare claim is refused, and declared criteria gate it until each is covered.

  • A record's text is immutable once confirmed. Correct it by restating: --supersedes <id> on any add verb records the new wording and keeps the lineage. retract withdraws a record with nothing replacing it.

Rules that keep the state trustworthy

  • Records — events, decisions, reports, conventions — are written in English so whoever opens them next can read them; answer the person in their own language.

  • A branch reaches main through a pull request: PR review and CI own merge control. Superself owns context and the work graph, not the merge gate.

  • Never hand-edit generated state files or anything under .superself/.

  • In a project without a superself block, run self setup first. If it resolves the directory to a registered project, ask the user once whether to run self connect, which writes the managed block into AGENTS.md or CLAUDE.md. If it resolves no project, ask once whether to register it with self project init. Never register or connect a project on your own.

Going deeper

self --help lists every verb; self <command> --help prints one command's flags without touching state. Topic guides ship with the CLI:

  • self help agents — how a session drives this CLI, start to finish

  • self help context — what self context renders, and why something is missing from it

  • self help records — one entity behind every record kind, and how a record is corrected

  • self help placement — scope, priority and exposure — how a record earns its place in context

  • self help work — the work graph: outcomes, evidence, criteria, and proposals

  • self help goals — long-term goals, objectives, milestones, and what reaching one takes

  • self help workspace — the store, the projects in it, and moving it between machines

Files

ATTRIBUTION.md

Attribution

This folder is an unmodified copy of the Agent Skill "superself", distributed by AutoGineer (https://autogineer.com/agent-skills).

The skill's own files are unmodified copies. AutoGineer is not affiliated with or endorsed by the author or the publisher.

Files added by AutoGineer

  • ATTRIBUTION.md: this file, written by AutoGineer

  • LICENSE: copied from LICENSE

Requirements and compatibility

Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta

“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.

Needs: Needs Node.js

Security

What our scanner noticed· Low risk

  • Instructions that use the network

A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.

Attribution and licence

Created by
fxylabs
Publisher
Seth Hobson (Community)
Distributed by
Seth Hobson
Source
wshobson/agents · plugins/superself/skills/superself · commit 4bde316
Licence
MIT License (redistribution allowed)
  • LICENSE (added by AutoGineer from LICENSE)
  • ATTRIBUTION.md (written by AutoGineer)
Synced

AutoGineer is not affiliated with or endorsed by fxylabs or Seth Hobson.

Download ZIP

The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download superself.zip