proxysoul/SoulStack

ProxySoul × Empryo: skills, agents, an immune system and habits for coding agents. soulstack.proxysoul.com

JavaScript

19

23 commits

updated Sep 27, 2026

See the code

See what people are saying

SourceMessageScoreDate

i built a bug-fixing workflow that leaves lint rules behind (r/SideProject)

i'm building Empryo, an AI coding agent. one thing i wanted was to stop fixing a pattern only for another agent to write it again later! so the bug workflow has separate jobs: reproduce it in an isolated home, have another agent confirm it, fix it with before/after proof, then review the fix. for…

1

Sep 27, 2026

README

Mote, Empryo's mascot, looking around

SoulStack

ProxySoul × Empryo
The skills, presets, prompts and habits behind Empryo, ready for your own agent.

Website    Docs    Immunity    Set it up    What's inside    My Empryo setup    MIT


Set it up

Point your agent at this repo and let it do the work. In Empryo, or any agent that can run commands:

Set up SoulStack for me from https://github.com/proxysoul/SoulStack and follow its AGENTS.md.

Or pick just the skills you want, for any agent, with the skills CLI:

npx skills add proxysoul/SoulStack

It lists the skills, asks which to install and for which agents. For Empryo, choose Universal (it installs into .agents/skills, which Empryo reads). Add -g for every project, -s ensoul to skip the picker, --list to only look.

Using GitHub Copilot CLI? SoulStack is also a Copilot plugin, with the skills and the takeaways as rules:

copilot plugin marketplace add proxysoul/SoulStack
copilot plugin install soulstack@soulstack

Or everything, with the setup script. It asks nothing and changes nothing without a backup:

  • downloads SoulStack to ~/dev/SoulStack (or updates it)
  • links the skills into ~/.agents/skills, and ~/.claude/skills if you use Claude Code
  • links the ten immune cells into Empryo, Claude Code, Copilot CLI and OpenCode
  • adds the takeaways to the global rules of every agent it finds: ~/.empryo/EMPRYO.md, ~/.claude/CLAUDE.md, ~/.codex/AGENTS.md, ~/.copilot/copilot-instructions.md, ~/.pi/agent/AGENTS.md, ~/.config/opencode/AGENTS.md. Your own rules stay; SoulStack's part sits in a marked block that updates in place
  • skips anything Empryo-only when Empryo isn't installed
macOS, Linux
curl -fsSL https://raw.githubusercontent.com/proxysoul/SoulStack/main/scripts/setup.sh | sh
Windows
irm https://raw.githubusercontent.com/proxysoul/SoulStack/main/scripts/setup.ps1 | iex

Every file it changes is copied to <file>.bak-<time> first.

Staying up to date

Setup also adds a soulstack command (in ~/.local/bin on macOS and Linux, in your user apps folder on Windows):

soulstack check     # is a new version out? changes nothing
soulstack update    # get it, set everything up again, show what changed
soulstack remove    # take SoulStack out; your own rules stay

update pulls the latest SoulStack, refreshes the skills and the rules block in every agent, and lists what's new. If you changed files in your copy, it keeps them and tells you instead of overwriting. Without the command, running the one-liner again does the same. Copilot plugin users run copilot plugin update soulstack.

From a clone you can also pass:

macOS, LinuxWindowsDoes
--presets proxysoul,proxysoul-mcp-Presets proxysoul,proxysoul-mcpAlso add my Empryo presets (optional)
--check-CheckChange nothing, show what is installed
--remove-RemoveTake SoulStack out again; your own rules stay
--skills <folder>-Skills <folder>Link the skills somewhere else
--plain-PlainNo colour or animation (automatic for agents and pipes)

Best with Empryo

SoulStack comes from ProxySoul, the creator of Empryo. It works in Claude Code, Codex, Copilot CLI, pi and OpenCode, and goes further in Empryo:

In EmpryoWhat it changes
Rules reload liveEdits and soulstack update apply on the next message, no restart
The GenomeImmune cells ask the code map where a bug lands before they attack or judge it
project toolChecks run the same way for every agent: immune, immune:smoke
Background agentstcell-helper runs the other cells in parallel
MemoryConfirmed bugs, disproved claims and traps carry over to the next run
Browser and computer useCells drive web and desktop apps through their real front doors
RoutinesA nightly /routine patrols and wakes the lead on red
EMPRYO.md templateEmpryo fills it in from the Genome, writing only what the code can't show

What's inside

ensoul

A skill that builds a product's design system and redesigns its website: reads the code and your vibe, connects every theme to its logos and screenshots, keeps one spacing scale, and proves it with screenshots.

EMPRYO.md template

A rules file that fills itself in. Copy it into a project and Empryo studies the project, then writes down only what its code map can't: rules, traps, commands and how you work.

Takeaways

Rules every agent here follows: finish the job, reproduce before fixing, prove it before and after, report with visuals, use memory.

Working habits

How Empryo's own agent works: map first, read before editing, check after every change, answer short.

immune-system

Testing that works like an immune system, grown for each project by your agent: it studies the product, researches this month's tools, drives the real app on every platform, and turns every confirmed bug into a permanent check. At scale it runs a bug machine of hundreds of agents. It ships a small web app (immune:app) in your project's design system to see health, runs, cells and findings, and to start runs.

Ten immune cells

tcell-helper leads; dendritic finds what is missing, tcell-hunter attacks, negative-selection kills false alarms, memory-cell makes bugs permanent checks, tcell-patrol runs everything, natural-killer guards security (packages, secrets, installers), plus platform, visual and toolsmith cells. Installed as stem cells; each grows into your project's own version.

SoulStack's own immune system

The worked example: setup and update tests on Linux and Windows, security checks, and the immune app. Run bun run immune:app, or try the console on a sample project on the website under Try the immune console.

Website and docs

Every layer shown visually in Empryo's six worlds, with docs for people and llms.txt plus Markdown pages for agents. bun run dev starts it.

Mascot guide

How to draw a calm mascot of your own: one fixed body, a moving eye, a green screen, every frame aligned. Shown with Mote, Empryo's mascot, which is not part of the stack.

Example output of the mascot guide: Mote, Empryo's mascot, in six styles

Prompts and templates

The redesign brief as one message for agents without skills, and starting points for a new skill, preset or prompt.

My Empryo setup

My global config as three presets in plugins/presets/:

PresetSets
proxysoulGPT-6 Sol as the main model, Astra for reviews and second opinions, Luna for grunt work and subagents; Undertow-style theme, desktop appearance, editor, agent features
proxysoul-trustedFull autonomy: yolo, auto-approve, every computer-use switch. Trusted machines only
proxysoul-mcpMCP servers; tokens come from environment variables, never the file

Add them with scripts/setup.sh --presets proxysoul,proxysoul-mcp, or for one launch with empryo --plugin <path>. After changing settings in Empryo, refresh them with bun scripts/export-config.ts: it drops machine-only state, moves risky switches into the trusted preset, and refuses to write anything that looks like a secret.


Made by ProxySoul with Empryo. Code and docs are MIT licensed. Mote and the Empryo name and logo are not: see LICENSE.

Contributors

proxysoul

23 commits

proxysoul/SoulStack

ProxySoul × Empryo: skills, agents, an immune system and habits for coding agents. soulstack.proxysoul.com

JavaScript

19

23 commits

updated Sep 27, 2026

See the code

See what people are saying

SourceMessageScoreDate

i built a bug-fixing workflow that leaves lint rules behind (r/SideProject)

i'm building Empryo, an AI coding agent. one thing i wanted was to stop fixing a pattern only for another agent to write it again later! so the bug workflow has separate jobs: reproduce it in an isolated home, have another agent confirm it, fix it with before/after proof, then review the fix. for…

1

Sep 27, 2026

README

Mote, Empryo's mascot, looking around

SoulStack

ProxySoul × Empryo
The skills, presets, prompts and habits behind Empryo, ready for your own agent.

Website    Docs    Immunity    Set it up    What's inside    My Empryo setup    MIT


Set it up

Point your agent at this repo and let it do the work. In Empryo, or any agent that can run commands:

Set up SoulStack for me from https://github.com/proxysoul/SoulStack and follow its AGENTS.md.

Or pick just the skills you want, for any agent, with the skills CLI:

npx skills add proxysoul/SoulStack

It lists the skills, asks which to install and for which agents. For Empryo, choose Universal (it installs into .agents/skills, which Empryo reads). Add -g for every project, -s ensoul to skip the picker, --list to only look.

Using GitHub Copilot CLI? SoulStack is also a Copilot plugin, with the skills and the takeaways as rules:

copilot plugin marketplace add proxysoul/SoulStack
copilot plugin install soulstack@soulstack

Or everything, with the setup script. It asks nothing and changes nothing without a backup:

  • downloads SoulStack to ~/dev/SoulStack (or updates it)
  • links the skills into ~/.agents/skills, and ~/.claude/skills if you use Claude Code
  • links the ten immune cells into Empryo, Claude Code, Copilot CLI and OpenCode
  • adds the takeaways to the global rules of every agent it finds: ~/.empryo/EMPRYO.md, ~/.claude/CLAUDE.md, ~/.codex/AGENTS.md, ~/.copilot/copilot-instructions.md, ~/.pi/agent/AGENTS.md, ~/.config/opencode/AGENTS.md. Your own rules stay; SoulStack's part sits in a marked block that updates in place
  • skips anything Empryo-only when Empryo isn't installed
macOS, Linux
curl -fsSL https://raw.githubusercontent.com/proxysoul/SoulStack/main/scripts/setup.sh | sh
Windows
irm https://raw.githubusercontent.com/proxysoul/SoulStack/main/scripts/setup.ps1 | iex

Every file it changes is copied to <file>.bak-<time> first.

Staying up to date

Setup also adds a soulstack command (in ~/.local/bin on macOS and Linux, in your user apps folder on Windows):

soulstack check     # is a new version out? changes nothing
soulstack update    # get it, set everything up again, show what changed
soulstack remove    # take SoulStack out; your own rules stay

update pulls the latest SoulStack, refreshes the skills and the rules block in every agent, and lists what's new. If you changed files in your copy, it keeps them and tells you instead of overwriting. Without the command, running the one-liner again does the same. Copilot plugin users run copilot plugin update soulstack.

From a clone you can also pass:

macOS, LinuxWindowsDoes
--presets proxysoul,proxysoul-mcp-Presets proxysoul,proxysoul-mcpAlso add my Empryo presets (optional)
--check-CheckChange nothing, show what is installed
--remove-RemoveTake SoulStack out again; your own rules stay
--skills <folder>-Skills <folder>Link the skills somewhere else
--plain-PlainNo colour or animation (automatic for agents and pipes)

Best with Empryo

SoulStack comes from ProxySoul, the creator of Empryo. It works in Claude Code, Codex, Copilot CLI, pi and OpenCode, and goes further in Empryo:

In EmpryoWhat it changes
Rules reload liveEdits and soulstack update apply on the next message, no restart
The GenomeImmune cells ask the code map where a bug lands before they attack or judge it
project toolChecks run the same way for every agent: immune, immune:smoke
Background agentstcell-helper runs the other cells in parallel
MemoryConfirmed bugs, disproved claims and traps carry over to the next run
Browser and computer useCells drive web and desktop apps through their real front doors
RoutinesA nightly /routine patrols and wakes the lead on red
EMPRYO.md templateEmpryo fills it in from the Genome, writing only what the code can't show

What's inside

ensoul

A skill that builds a product's design system and redesigns its website: reads the code and your vibe, connects every theme to its logos and screenshots, keeps one spacing scale, and proves it with screenshots.

EMPRYO.md template

A rules file that fills itself in. Copy it into a project and Empryo studies the project, then writes down only what its code map can't: rules, traps, commands and how you work.

Takeaways

Rules every agent here follows: finish the job, reproduce before fixing, prove it before and after, report with visuals, use memory.

Working habits

How Empryo's own agent works: map first, read before editing, check after every change, answer short.

immune-system

Testing that works like an immune system, grown for each project by your agent: it studies the product, researches this month's tools, drives the real app on every platform, and turns every confirmed bug into a permanent check. At scale it runs a bug machine of hundreds of agents. It ships a small web app (immune:app) in your project's design system to see health, runs, cells and findings, and to start runs.

Ten immune cells

tcell-helper leads; dendritic finds what is missing, tcell-hunter attacks, negative-selection kills false alarms, memory-cell makes bugs permanent checks, tcell-patrol runs everything, natural-killer guards security (packages, secrets, installers), plus platform, visual and toolsmith cells. Installed as stem cells; each grows into your project's own version.

SoulStack's own immune system

The worked example: setup and update tests on Linux and Windows, security checks, and the immune app. Run bun run immune:app, or try the console on a sample project on the website under Try the immune console.

Website and docs

Every layer shown visually in Empryo's six worlds, with docs for people and llms.txt plus Markdown pages for agents. bun run dev starts it.

Mascot guide

How to draw a calm mascot of your own: one fixed body, a moving eye, a green screen, every frame aligned. Shown with Mote, Empryo's mascot, which is not part of the stack.

Example output of the mascot guide: Mote, Empryo's mascot, in six styles

Prompts and templates

The redesign brief as one message for agents without skills, and starting points for a new skill, preset or prompt.

My Empryo setup

My global config as three presets in plugins/presets/:

PresetSets
proxysoulGPT-6 Sol as the main model, Astra for reviews and second opinions, Luna for grunt work and subagents; Undertow-style theme, desktop appearance, editor, agent features
proxysoul-trustedFull autonomy: yolo, auto-approve, every computer-use switch. Trusted machines only
proxysoul-mcpMCP servers; tokens come from environment variables, never the file

Add them with scripts/setup.sh --presets proxysoul,proxysoul-mcp, or for one launch with empryo --plugin <path>. After changing settings in Empryo, refresh them with bun scripts/export-config.ts: it drops machine-only state, moves risky switches into the trusted preset, and refuses to write anything that looks like a secret.


Made by ProxySoul with Empryo. Code and docs are MIT licensed. Mote and the Empryo name and logo are not: see LICENSE.

Contributors

proxysoul

23 commits

Languages

JavaScript

39.5%

CSS

24.6%

TypeScript

18.0%

PowerShell

7.7%

Shell

7.5%

HTML

2.7%