meetsoma 0.1.1 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,70 @@ All notable changes to Soma (`meetsoma` on npm).
4
4
 
5
5
  Format follows [Keep a Changelog](https://keepachangelog.com/). Versioning follows [Semantic Versioning](https://semver.org/).
6
6
 
7
+ ## [0.1.3] — 2026-03-23
8
+
9
+ ### New
10
+
11
+ - **Body architecture** — structured identity in `.soma/body/`. Create `soul.md` (who the agent is), `voice.md` (how it communicates), `body.md` (project context). Each file becomes a `{{variable}}` usable in templates.
12
+ - **Template engine** — `_mind.md` controls your system prompt structure. Add `{{soul}}`, `{{voice}}`, custom text. 5 modifiers: `|tldr`, `|section:Name`, `|lines:N`, `|last:N`, `|ref`.
13
+ - **Smart AMPS loading** — warm protocols and muscles now appear as `<available_skills>` entries (Claude's native format). Agent reads them on demand instead of loading everything into the prompt.
14
+ - **`/body` command** — inspect your template system. `check` (health report), `vars` (all variables), `map` (structure), `render` (full compiled prompt).
15
+ - **`/exit`** command — save state and quit cleanly.
16
+ - **`SOMA.md`** — new canonical identity file name. Replaces `identity.md` (still works as fallback).
17
+
18
+ ### Changed
19
+
20
+ - **Boot messages** rewritten — "You woke up" instead of "You've booted into a session."
21
+ - **Auto-breathe** — agent no longer guesses context percentages. Trusts the system to prompt when it's time.
22
+ - **Muscle heat** — muscles gain heat when loaded at boot, not just when explicitly read.
23
+
24
+ ### Fixed
25
+
26
+ - **Stale conversation injection** — removed scanner that picked up old sessions from wrong runtime.
27
+ - **Identity frontmatter** — no longer leaks YAML into the system prompt.
28
+
29
+ ---
30
+
31
+ ## [0.1.2] — 2026-03-22
32
+
33
+ ### New
34
+
35
+ - **`/hub` command** — install, fork, share, find, and browse community content from one command. Replaces `/install` and `/list`.
36
+ - **Drop-in commands** — add scripts to `.soma/amps/scripts/commands/` and they become `/soma <name>` commands instantly.
37
+ - **Community hub: 40 items** — protocols, muscles, scripts, automations, and templates. Browse at soma.gravicity.ai/hub.
38
+ - **Smart sharing** — `/hub share` runs quality checks, auto-fixes private paths, opens a PR to the community.
39
+ - **Multiple git emails** — `guard.gitIdentity.email` now accepts an array for multi-account users.
40
+ - **Preload improvements** — Weather (session tone) and Warnings (traps for next session) in default template.
41
+
42
+ ### Changed
43
+
44
+ - `/install` and `/list` now redirect to `/hub install` and `/hub list`.
45
+ - Protocols that document built-in behavior no longer load into the prompt (saves ~2000 tokens).
46
+
47
+ ### Fixed
48
+
49
+ - `/hub list --remote` now works (flag was parsed as type filter).
50
+
51
+ ## [0.6.2] — 2026-03-21
52
+
53
+ ### New
54
+
55
+ - **Muscle heat from natural use.** Running scripts or editing files now bumps related muscles automatically — no `/pin` needed.
56
+ - **`soma doctor`** — checks workspace health, auto-fixes stale frontmatter, detects version drift.
57
+ - **Community sync on boot.** Missing protocols fetched from community repo automatically. Always current, works offline.
58
+
59
+ ### Fixed
60
+
61
+ - **No more "Update Available" banner.** Runtime delegation fixed.
62
+ - **Fresh installs** now include version tracking in settings.json.
63
+ - Welcome flow is honest about being a personality engine, not the agent.
64
+
65
+ ### Changed
66
+
67
+ - Muscle activation fields simplified — triggers, keywords, topic merged into single list. Old format still works.
68
+
69
+ ---
70
+
7
71
  ## [0.6.1] — 2026-03-20
8
72
 
9
73
  ### New
package/README.md CHANGED
@@ -1,23 +1,33 @@
1
- # σ Soma
1
+ <div align="center">
2
2
 
3
- > Memory isn't retrieval. Memory is change.
3
+ <br>
4
4
 
5
- An AI coding agent that grows with you. Identity, protocols, and muscle memory that evolve through use — not configuration.
5
+ ### σ Soma
6
6
 
7
- Most agents forget everything between sessions. Soma doesn't. Each session leaves the agent slightly different than the one before.
7
+ *Memory isn't retrieval. Memory is change.*
8
8
 
9
- ## Install
9
+ <br>
10
10
 
11
11
  ```bash
12
12
  npm install -g meetsoma
13
13
  soma
14
14
  ```
15
15
 
16
- That's it. On first run, Soma downloads the runtime, sets up `~/.soma/`, and you're ready. Run `soma` in any project directory to start a session.
16
+ <br>
17
+
18
+ [Docs](https://soma.gravicity.ai/docs) · [Blog](https://soma.gravicity.ai/blog) · [Hub](https://soma.gravicity.ai/hub) · [Source](https://soma.gravicity.ai/beta)
19
+
20
+ </div>
21
+
22
+ ---
23
+
24
+ An AI coding agent that grows with you. Identity, protocols, and muscle memory — all evolving through use, not configuration.
25
+
26
+ Most agents forget everything between sessions. Soma doesn't.
17
27
 
18
28
  ## What Happens
19
29
 
20
- Run `soma` and you'll see a rotating concept about how the system works and you can ask questions right from the CLI. Press `?` to explore:
30
+ On first run, you'll meet the personality engine no AI, just sentence templates. It introduces Soma and lets you ask questions before committing. Press Enter to install.
21
31
 
22
32
  ```
23
33
  σ
@@ -26,75 +36,49 @@ Run `soma` and you'll see a rotating concept about how the system works — and
26
36
 
27
37
  ❝ No compaction. Ever.
28
38
 
29
- Other agents hit context limits and compact — squeezing your
30
- entire session into a degraded summary. You wait while it
31
- processes. Soma skips compaction entirely. When context gets
32
- tight, the agent writes a briefing for its next self. Then
33
- it starts fresh. Full context window. Zero wait. Nothing lost.
34
-
35
39
  ──────────────────────────────────────────────────────────
36
40
 
37
41
  → Enter Install Soma
38
42
  → ? Ask me something first
39
43
  ```
40
44
 
41
- Every answer is generated fresh different wording each time you run it.
45
+ After install, run `soma` in any project. It creates `.soma/`, reads your codebase, and writes its own identity. By session two, it remembers.
42
46
 
43
47
  ## Commands
44
48
 
45
- ### Getting Started
46
-
47
- | Command | What it does |
48
- |---------|-------------|
49
- | `soma` | See what Soma is about, or start a session |
50
- | `soma init` | Install the runtime |
51
- | `soma about` | How Soma works — identity, protocols, muscles, breath, scripts |
52
- | `soma doctor` | Verify installation health |
53
- | `soma update` | Check for new versions |
54
- | `soma status` | Show installation state |
55
-
56
- ### After Install
57
-
58
- | Command | What it does |
59
- |---------|-------------|
60
- | `soma` | Start a session |
61
- | `soma focus <keyword>` | Start a focused session |
62
- | `soma inhale` | Resume from last session's preload |
63
- | `soma --map <name>` | Load a specific workflow |
64
-
65
- ## How It Works
66
-
67
- **Identity** — The agent maintains a self-written identity file. It knows your project, your patterns, your preferences. This isn't configuration. It's self-knowledge.
68
-
69
- **Protocols** — Behavioural rules that shape how the agent works. "Read before write." "Test before commit." They have heat — used ones stay hot, unused ones fade.
70
-
71
- **Muscles** — Learned patterns. "Use esbuild for bundling." "This API uses OAuth." Muscles grow from corrections and repetition. Correct the agent twice and it crystallises a muscle — permanent learning.
72
-
73
- **Breath Cycle** — Every session follows three phases. Inhale (load state) → Hold (work) → Exhale (save state). At context limits, the agent writes a preload for its next self — a briefing, not a summary. No compaction. No quality loss. Full context window every session.
49
+ ```bash
50
+ soma # start a session
51
+ soma focus <keyword> # load relevant muscles + MAPs
52
+ soma inhale # resume from last session
53
+ soma --map <name> # load a workflow
54
+
55
+ soma init # install the runtime
56
+ soma doctor # check health
57
+ soma update # check for updates
58
+ ```
74
59
 
75
- **Scripts** The agent builds tools for itself. What it does twice manually, it automates. Scripts survive across sessions, context resets, and model swaps.
60
+ ## The Five Ideas
76
61
 
77
- **Heat** — Every protocol and muscle has a heat score. Use it? Heat rises. Ignore it for three sessions? It cools. The agent's prompt compiles itself based on what's actually relevant — not what someone configured months ago.
62
+ **Identity** — a self-written file. It knows your project, your patterns, your stack.
78
63
 
79
- ## Source Available
64
+ **Protocols** behavioral rules. "Read before write." Hot ones load. Cold ones fade.
80
65
 
81
- Soma is source-available under BSL 1.1. View the code, use it personally, contribute.
66
+ **Muscles** learned patterns. Correct it twice permanent learning.
82
67
 
83
- - **Get access:** [soma.gravicity.ai/beta](https://soma.gravicity.ai/beta) register for source access + contributor tier
84
- - **Docs:** [soma.gravicity.ai/docs](https://soma.gravicity.ai/docs)
68
+ **Breath** inhale, work, exhale. No compaction. Full context every session.
85
69
 
86
- Converts to MIT on 2027-09-18.
70
+ **Heat** attention management. Used things stay. Unused things cool.
87
71
 
88
72
  ## Requirements
89
73
 
90
- - Node.js ≥ 20.6.0
74
+ - Node.js ≥ 20.6
91
75
  - git
92
- - An API key for your preferred provider (Anthropic, Google, OpenAI)
76
+ - API key (Anthropic, Google, or OpenAI)
93
77
 
94
- ## Documentation
78
+ ---
95
79
 
96
- [soma.gravicity.ai](https://soma.gravicity.ai)
80
+ <div align="center">
97
81
 
98
- ## License
82
+ <sub>BSL 1.1 © Curtis Mercier — open source 2027</sub>
99
83
 
100
- [BSL 1.1](LICENSE) — © 2026 Curtis Mercier.
84
+ </div>
@@ -199,11 +199,11 @@ function spin(text) {
199
199
  const TOPICS = {
200
200
 
201
201
  what_is_soma: [
202
- `Soma is an AI coding agent that {grows with you|evolves through use|learns as you work}. {It remembers across sessions|It doesn't forget between sessions|Sessions build on each other} — not by {storing chat logs|saving transcripts|keeping message history}, but by {evolving its own|reshaping its|growing its} working patterns {through use|over time|with each session}.`,
202
+ `Soma is an AI coding agent that {grows with you|evolves through use|learns as you work}. {It remembers across sessions|It doesn't forget between sessions|Sessions build on each other} — not by {storing chat logs|saving transcripts|keeping message history}, but by {evolving its own|reshaping its|growing its} working patterns {through use|over time|with each session}. {And this?|What you're talking to?|Me?} {I'm just the greeter|I'm the welcome mat|I'm not the agent} — {Soma built this personality engine to say hello|a few hundred lines of templates, no AI|the real thing starts with} ${"`soma init`"}.`,
203
203
 
204
- `{Think of it this way|Here's the short version|In a sentence}: most agents {start fresh every time|forget everything between runs|have no continuity}. Soma {doesn't|doesn't do that|remembers}. It maintains an identity, {builds|develops|grows} muscle memory, and {writes|leaves|creates} briefings for its {next self|future self|next session}.`,
204
+ `{Think of it this way|Here's the short version|In a sentence}: most agents {start fresh every time|forget everything between runs|have no continuity}. Soma {doesn't|doesn't do that|remembers}. It maintains an identity, {builds|develops|grows} muscle memory, and {writes|leaves|creates} briefings for its {next self|future self|next session}. {I'm not it, by the way|I'm just the lobby|This conversation is pre-recorded, in a sense} — {run|try} ${"`soma init`"} {to meet the real agent|to see it in action|for the actual experience}.`,
205
205
 
206
- `An AI agent with {self-growing|self-evolving|persistent} memory. {Identity|Who it is}, {protocols|how it behaves}, and {muscles|what it's learned} — all {evolving|adapting|shifting} based on {what you actually do|how you actually work|real usage}, not {configuration|config files|settings you set once and forget}.`,
206
+ `An AI agent with {self-growing|self-evolving|persistent} memory. {Identity|Who it is}, {protocols|how it behaves}, and {muscles|what it's learned} — all {evolving|adapting|shifting} based on {what you actually do|how you actually work|real usage}, not {configuration|config files|settings you set once and forget}. {You're not talking to it right now, though|This isn't the agent — I'm just the intro|I'm Soma's personality engine, not Soma}. {The real thing awaits after|Get started with|Install via} ${"`soma init`"}.`,
207
207
  ],
208
208
 
209
209
  how_memory_works: [
@@ -278,7 +278,9 @@ const TOPICS = {
278
278
  ],
279
279
 
280
280
  how_to_try: [
281
- `{You're looking at it|This is the demo|You're in one right now}. {This Q&A|What we're doing here|This conversation} is {Soma's personality engine|a taste of how Soma communicates|built the same way the agent thinks} {no AI, just clever templates|different words every time|same ideas, always fresh}. {The full agent|The real thing|What you'd use daily} does {everything you've been asking about|memory, heat, protocols, scripts|all of it} — {but for real, across sessions|with actual continuity|and it remembers}. {Run|Try} ${"`soma init`"} to {see it live|get the full experience|start for real}.`,
281
+ `{This conversation?|What you're talking to right now?|Me?} I'm {not the agent|not Soma|just the greeting}. {I'm a personality engine|I'm a few hundred lines of JavaScript|I'm sentence templates} — {Soma built me to say hello|built to hold the door open|here to introduce you}. {No AI, no model, no transformer|Zero intelligence, maximum charm|Just words in boxes, honestly}. {The real Soma|The actual agent|What you'd install} that one {learns your patterns|remembers across sessions|grows with every session}. {Run|Try} ${"`soma init`"} to {meet the real thing|get started|see the difference}.`,
282
+
283
+ `{I'm not the agent|This isn't Soma|Don't confuse me with the real thing}. {I'm the welcome mat|I'm the lobby|I hold the door open}. {Soma built this personality engine|The agent wrote me|I was crafted} to {give you a feel for the voice|introduce myself before you commit|say hello without burning an API call}. {The actual agent|What you'll get with soma init|The real experience} is {an AI that remembers|a coding partner with memory|something genuinely different}. {But that's not me|I'm just templates|I'm the appetiser, not the meal}.`,
282
284
  ],
283
285
 
284
286
  // ── Edge cases ─────────────────────────────────────────────────────
@@ -320,7 +322,7 @@ const TOPICS = {
320
322
  ],
321
323
 
322
324
  meta_impressed: [
323
- `{Thanks|Appreciate it|That means something}. {This is just the surface|This is the lobby|You're seeing the preview}. {The actual agent|The real thing|What you'd use day to day} — {it writes its own tools|it maintains its own identity|it remembers what you taught it three sessions ago}. {This CLI is a ghost of that personality|I'm an echo of the real thing|Consider this a taste}. {Run soma init to get started|Try it — soma init|It gets better from here}.`,
325
+ `{Thanks|Appreciate it|That means something}. {But I'm the easy part|I'm just sentence templates|I'm the simple one}. {The actual agent|The real Soma|What you'd use day to day} — {it writes its own tools|it maintains its own identity|it remembers what you taught it three sessions ago}. {Soma built me to hold the door open|I was crafted to make introductions|The agent made this greeting engine}. {Run soma init to meet the real thing|Try it — soma init|It gets better from here}.`,
324
326
  ],
325
327
 
326
328
  meta_how_work: [
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "meetsoma",
3
- "version": "0.1.1",
4
- "description": "Soma the AI coding agent with self-growing memory",
3
+ "version": "0.1.3",
4
+ "description": "Soma \u2014 the AI coding agent with self-growing memory",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "soma": "dist/thin-cli.js"
@@ -37,4 +37,4 @@
37
37
  "engines": {
38
38
  "node": ">=20.6.0"
39
39
  }
40
- }
40
+ }