Everything I'd built in Claude stayed behind

A stranger asked if you could keep skills across every agent. I had been sitting on it.

Everything I'd built in Claude stayed behind
β€’7 min read

Riley Brown asked if there was a platform that stores skills, APIs, and memory in the cloud so they sync with every agent tool. Seamless. Easy. Does this exist.

Riley Brown asking if a platform exists to store skills, APIs, and memory in the cloud across every agent tool

I had been sitting on it.

I posted a diagram of the design on a Sunday night. Claude, Grok, Cursor, and a grey box that just says whatever's next, all dropping into one server. The line under the title was simple. An agent connects to the server and asks what it can do. In the middle of the drawing: list_skills and get_skill. Under that, skills stored once. Bug logger. Seed builder. Weekly review. Campaign launcher. Daily planner. Proofreader. Across the server in red: PROPOSED.

Diagram of the design: skills stored in BlackOps, not in the agent. Claude, Grok, and Cursor sit above the MCP.

Then I actually switched.

I moved over to a Grok bot this weekend. New window. Same work. I still needed to file a bug the way the fixer expects it filed. I still needed a weekly review to be the weekly review, not a fresh essay that sounded like one. None of that came with me.

People talk about memory like that is the loss. The chat history. The bio you pasted. The project instructions you babysat for three months. That stuff hurts. It is not the operating knowledge.

What stayed behind were the procedures. How a bug gets logged so it shows up on a dashboard. Which fields are required. Which words are legal for severity. The step where you show the complete note and wait for yes before you write anything. A new window has none of that. It has confidence. It wants to be the author. It will invent a schema, name a root cause it has not earned, and hand you a paragraph that never appears on the board.

That is the enemy. The chat holding the operating knowledge hostage.

Stale copies

Here is the drift every heavy agent user already lives.

You have bug-logger in Claude. It waits for yes before it writes. Last month you pasted a copy into Cursor so the same procedure would run there. This weekend you opened Grok. Three files. Claude's copy still waits. The Cursor copy is a week behind and writes immediately. Tonight the one that fires is the one you did not update. You logged a bug with last month's schema. The dashboard does not see it, or the fixer never starts, and you will spend the next hour walking it back.

Portable skills are one procedure. Claude, Cursor, and Grok each get a compile. They stop drifting because there is nothing left to paste.

What BlackOps actually is

BlackOps is not a content mill. It is an authority engine. Brains hold compiled knowledge. Notes are the records. Sorties fire actions. A sortie is a webhook plus a token stored on the server, never in the chat. Skills are portable procedures stored on that same server. The MCP is how an agent talks to all of it.

Claude already had that catalog. This weekend I pointed Grok Bot at the BlackOps MCP. That is the whole move. I did not paste a zip of prompts into the new chat. Grok Bot got the same tools Claude had: list_brains, list_notes, get_note, list_skills, get_skill, fire_sortie, post_notes. Connecting the MCP is what made the work available. Switching chats used to leave the procedures behind. Connecting the MCP is why it didn't.

Decision rule

Mixing those is how a CLAUDE.md becomes 4,000 lines.

How a bug gets logged is a skill. Required fields. Wait for yes. Do not fire the fixer if the write did not return an id. Those are steps.

BlackOps is brains, notes, sorties, skills. That is a fact about the system. Facts go in a brain.

The bug-fixer token is a sortie. The webhook and the credential live on the server. The chat only says go. Secrets go in a sortie.

Steps go in a skill. Facts go in a brain. Secrets go in a sortie. The MCP is the pipe. If you dump all three into one instruction file, the next window will improvise the steps, hallucinate the facts, and you will have pasted a token into a chat. I have watched people do that. I built the split so I would stop doing it.

One procedure, four files

A skill is not a folder of prompts. A folder of prompts is still copy you have to remember to open, still written in one host's tool names, still dead when transcribe_youtube becomes transcribe_video. The procedure was fine. The brand of the tool was not the point.

A skill talks about capabilities. write_note. fire_routine. The binding table is the only place a tool name is allowed. Change a tool, change one line.

When an agent starts work it calls list_skills. It gets slugs and short descriptions. Not the full body. Enough to see if any procedure matches the job. If one does, it calls get_skill for that slug. get_skill compiles. Same procedure, different file. Claude gets a SKILL.md. Cursor gets a .mdc rule. Grok gets a prompt. The steps that come back name the tools that host actually has. If the host has no binding for a step, the skill warns. It does not invent a tool.

The secret does not come with the file. The skill says fire the routine. It does not carry the key. Tokens stay on the server. The host gets the steps. It does not walk off with the credentials.

What I actually used this week

Sunday night that drawing was still a design. This is the now.

I asked Grok Bot to list skills. list_skills came back with three: bug-logger, feature-logger, voice-correction-logger. Those three are the start, not the ceiling.

You already have a SKILL.md in Claude. Weekly review. Daily planner. Whatever you already run. You store it once on BlackOps. Grok Bot is already pointed at the MCP. It calls list_skills, sees the slug, calls get_skill, and gets a Grok prompt with that host's tool names. If a step has no binding here, it warns instead of guessing. You are not starting from zero. You are moving the ones you already run.

I had it pull bug-logger with get_skill in grok format and follow it. Required fields. Wait for yes. Then post_notes. It did not invent a schema. It asked for what happened, what should have happened, the steps, a severity from a short list. It showed the note and waited. On yes it wrote the record.

Those writes were real bugs:

  • list_notes ignores brain_id and date filters (bd0eba44)
  • brain compile bumps source note updated_at (f49b84a2)
  • feature pages use the wrong colors and overflow on mobile (74785e4e)

I said fire the fixer on the feature-pages bug. Grok Bot called fire_sortie for bug-fixer. The session is here. The token never entered the chat. That is the point of a sortie. The webhook and the credential live on the server. The chat only says go.

I also used list_notes and list_brains to look back seven days for what to write. That hunt is how the two MCP bugs showed up. The product is in use, including when it fails. A system that will not report on itself is a folder of wishes.

I do not want the next window to keep my operating knowledge hostage. I pointed a new chat at the same server. I want to switch windows and keep the steps.

If you already run procedures in one chat, you are the person this is for. Store them once. Point the next window at BlackOps.

Sign up

Join the conversation

Have thoughts about this post? Reply on 𝕏 β€” I read every one.

Discuss on 𝕏
Loading tweet...

Related Posts