A working profile for your AI coding agent.

When is a session-derived profile useful?

Consider Emulo when you already have coding-session history and want recurring preferences to carry into future tasks. For example, repeated requests to show a running result may support a rule to verify behavior before reporting completion. Review the supporting messages before accepting that rule.

A handwritten AGENTS.md, CLAUDE.md or Cursor rule is a good place for instructions you already know. Emulo helps discover patterns you have not collected yet. It uses actual session evidence as its input; those instruction files are not mining sources. Keep project facts and explicit project rules alongside the personal profile.

Session sources and profile destinations are different

Cursor is a profile destination here, not a supported raw-log source in the published CLI. A profile only helps when the agent actually loads it. Installation and automatic loading depend on the host; see the current support matrix.

Start with the released CLI

The published 0.6.2 package requires Python 3.8 or newer. In a Python environment, install it and inspect your available history without writing extracted output:

python -m pip install emulo==0.6.2
emulo --dry-run

When ready, run emulo to prepare the extracted chunks and RUN_ME.md. Ask your coding agent to follow that generated file to mine the evidence and produce the profile. Review the mining plan and model cost before authorizing model work. Preparing chunks alone does not produce a finished personal profile.

Prefer setup through an agent? The documented skill bootstrap is:

npx skills add ohad6k/emulo@emulo

Then ask your agent to run emulo. It prepares a mining plan for review. The repository also documents native plugin installation.

Review, then load the profile

Check the generated rules against their receipts. emulo verify you.md checks whether quoted evidence can be found in the mined sessions; it cannot decide whether a rule is useful or accurately describes you.

For a Cursor repository, run this from the repository after replacing you.md with your generated profile's path:

emulo --install you.md --target cursor --repo .

For an MCP client, use the installed emulo command with the argument mcp. A common client configuration is:

{
  "mcpServers": {
    "emulo": { "command": "emulo", "args": ["mcp"] }
  }
}

The MCP server serves an existing local profile. Mining and installing the profile are separate setup steps. See MCP setup for alternatives.

What stays local, and what reaches a model?

Session extraction, redaction, caches and generated profiles stay on your machine in the local workflow. Mining uses the model you choose: a hosted model receives selected evidence, while a local model can keep that processing on your machine. An agent or MCP client backed by a hosted model can also send loaded profile text to its provider as context.

Secret redaction is best-effort. Inspect extracted evidence and profiles before sharing them. The local engine is MIT licensed and works without an Emulo account; model-provider usage can still cost money. This guide covers the local workflow. Consult the security policy for its data boundary.

What to expect

Sparse history can produce a sparse profile. A mined preference can be wrong, outdated or specific to one project. Edit the result and keep only rules you can defend. Emulo does not enforce agent behavior or guarantee that a model follows every instruction.

Evaluate it on your own recurring tasks: check whether the agent loaded the profile, whether it honored the relevant instructions, and whether the result improved. This guide makes no benchmark or recommendation-ranking claim.