← Skills

ants

ants

"Tell a story about ants, or read a system the way the book reads one. Use when writing any ants story, when someone asks where a system's intelligence lives, or when a claim about the colony needs checking against what the substrate can actually do. Triggers — \"write an ants story\", \"tell the ants story\", \"who is in charge of this system\", \"is this a mill\", \"what does the colony do here\", \"ant colony optimisation\"."

ants

The book hands over a notation. This skill is how to use it without lying with it.

Step 1 — which register

Writing Register
a story (text/<slug>.md, /ants, /stories/*) book — load the voice skill. Sells nothing. Names no product. No "I".
a promise, a plan, a page that takes money commercial

A story that starts selling stops being able to hand over the notation, which is
the only thing it had. text/ants-course.md deliverable 7 makes this a gate: the
rendered story page must return zero matches of enrol, a dollar figure,
buy now or pricing.

Step 2 — the engine

The book runs one move eight times. Pick a system the reader already half-knows,
show where its intelligence actually lives, show that nobody is in charge, and
stop. It never tells the reader what to conclude.

A story that could be replaced by "go and read chapter 9" is the wrong story.

Step 3 — the arithmetic, in the substrate's own words

Four numbers, and they are the same four schema/one.tql moves:

  • mark raises strength — what worked
  • warn raises resistance — what did not
  • fade evaporates both at the group's fade-rate
  • a walker follows the strongest net (strength − resistance), never strength alone

The asymmetry is load-bearing. Resistance fades faster than strength, so the
colony forgives a bad path sooner than it forgets a good one. Invert it and the
system remembers every failure forever and re-explores every success.

Runnable: one.ie/web/src/lib/ants.ts. Queryable: schema/ants.tql.

Step 4 — the checks that stop the four lies

"The colony decides." It does not. There is no deciding anywhere. Rewrite it
as a rate, a threshold and a departure, or do not write it.

"Our system is stigmergic." text/colony.md § 3 records that claim as NOT
WIRED and § 6 says what ships is exclusion, not stigmergy. Say what is measured.

"We can detect a mill." Not in the substrate. path owns no timestamp and
nothing records where a deposit came from (schema/ants.tql, the block that says
so). The lib can only because its caller hands it sinceExternal.

Any number from the manuscript. docs/book/manuscript/ is finished and is not
yours — quote it, never edit it. A number from anywhere else needs its own source.
text/the-mill.md carries unverified sources and says so in its own frontmatter;
that is the pattern, not an oversight.

Step 5 — the shape of one story

Seven beats (text/story-framework.md), six of them skinning a locked dimension
and one skinning the verb signal. Then the Story Spine spoken, because it is the
one grammar that forces because of that.

Leave the Lesson open. A Lesson is learned by someone, and it is not something
a machine should fill in.

Then

bash .claude/skills/voice/corpus-check.sh <draft.md> — it counts the mechanical
half against the 93,032-word corpus and says plainly that it cannot judge the rest.

Never

  • Never rename a dimension or a verb to make a sentence prettier.
  • Never call a Group a colony. A Group is a tenancy boundary; a colony has no siblings.
  • Never write the Lesson for the teller.
  • Never put a story behind a price.