importlisted
Install: claude install-skill mubit-ai/plugins
**This skill uploads work history to the configured Mubit instance.** It runs one Node process
from the plugin directory, reads `~/.codex/sessions` — and, when asked, Claude Code's
`~/.claude/projects` — and ingests what it finds. Nothing is sent unless `--send` is on the
command line.
**Do not run it on your own initiative, and do not pass `--send` unless the user said to.**
The Claude Code copy of this skill enforces that with `disable-model-invocation: true`; Codex
has no such key, so here it is a rule rather than a mechanism. It is a stricter rule than the
one on `activity` and `dashboard`, which only read. This one takes months of somebody's
transcripts — every prompt, every command, every file they touched — and puts them on a
server.
## Step 0 — resolve the binary
No environment variable carries this plugin's path under Codex. Codex lists each skill with the
absolute path of its `SKILL.md`; **this file** is at `<plugin-root>/skills/import/SKILL.md`, so
the binary is two directories above it:
```
<plugin-root>/bin/import.mjs
```
Resolve that to an absolute path from this file's own location and use it in every command
below. Do not write `${CLAUDE_PLUGIN_ROOT}`: Codex sets no plugin-root variable of any
spelling, so the shell expands it to nothing and `node /bin/import.mjs` fails with ENOENT.
## Always dry-run first, and show them the number
```bash
node <plugin-root>/bin/import.mjs
```
That is the whole command, and it sends nothing: a dry run is what happens w