Soulscrape

An Agent Skill for evidence-calibrated person models

Soulscrape

Understand a person without pretending to contain them

Soulscrape turns the evidence you are authorized to use into a dated, evidence-calibrated working model of a person: how they have tended to decide, communicate, work, and revise, with the counterevidence, uncertainty, and stop conditions a useful model needs.

Free and MIT licensed. An Agent Skill for Claude Code, Codex, Cursor, and compatible agents. Current verified release @hraness/ensoul@0.3.5.

# <Name>: a dated working model

> Status: Partial, source-bounded, dated, and revisable. The real person's
> current words, choices, and corrections outrank this document.

## Executive model
The few patterns that best explain the subject's demonstrated choices.

## Practical operating manual
How to bring context, disagree, decide, draft, verify, and close loops.

## Tensions, limits, and revision hooks
Where the evidence conflicts, where the model predicts poorly, and what
new evidence should change it.

## What not to infer
Sensitive, unsupported, stale, or out-of-scope conclusions.
The shape of a well-supported result. Its sections follow the evidence rather than a personality template.Markdown produced by the skill

From an authorized corpus to a working model.

Read the evidence, preserve contradictions, and make the limits of each conclusion visible.

Understand a person without pretending to contain them.

Soulscrape turns a user-authorized corpus into a dated, evidence-calibrated working model of a person. The result is a standalone guide to how the subject has tended to decide, communicate, work, and revise—together with the counterevidence, uncertainty, and stop conditions a useful model needs.

The artifact can serve as a personal operating manual and, for a self-model or explicitly subject-authorized use, a bounded assistant charter. It is never a definitive identity record, diagnosis, consent artifact, or authority to impersonate or act for someone.

See the artifact first

Every run produces a new Markdown document by default. Its shape follows the evidence rather than a personality template, but a well-supported result has a recognizable spine:

# <Name>: a dated working model

> Status: Partial, source-bounded, dated, and revisable. The real person's
> current words, choices, and corrections outrank this document.

## Executive model
The few patterns that best explain the subject's demonstrated choices.

## Practical operating manual
How to bring context, disagree, decide, draft, verify, and close loops.

## Tensions, limits, and revision hooks
Where the evidence conflicts, where the model predicts poorly, and what
new evidence should change it.

## What not to infer
Sensitive, unsupported, stale, or out-of-scope conclusions.

This is not a generated biography with a confidence score. Soulscrape separates facts, stated beliefs, revealed patterns, and speculation; preserves contradictions; and makes the model's date and evidence boundary visible to the next reader.

How the working model is built

  1. Map the authorized corpus. Identify source type, authorship, date range, audience, sampling limits, and likely blind spots before interpreting it.
  2. Weight evidence by the claim. Repeated decisions and costly behavior usually carry more signal than polished self-description. Private capture, created artifacts, messages, public research, and institutional material retain their different evidentiary roles.
  3. Calibrate support and scope separately. A pattern can be well-supported in engineering decisions and still be untested outside work. Counterevidence, historical change, and plausible alternative readings stay visible.
  4. Turn the model into operating guidance. The result explains what collaborators or an authorized assistant can do with the model, which decisions remain with the person, and when the document needs revision.

The ambition is whole-person. The claim is never completeness.

Two references bound the edges of that work. questions.md turns a vague request into a question packet, decides when to ask and when to proceed, and defines the stop conditions. web-research.md governs public research when the user turns it on: scope comes only from the user's instructions, every finding enters a citation ledger with its URL, access date, and passage, and no public source is attributed to the subject without an identity anchor.

Boundaries

Boundaries the skill keeps for you.

These are product boundaries, not optional cautions. The skill keeps them adjacent to corpus intake, synthesis, output design, and final verification.

Authorized evidence only
Soulscrape reads the corpus you place in scope and nothing else. Possessing messages, a packet, or public information is not the subject's authorization, and the skill says so before it starts.
Asking before guessing
A question packet records the subject, the intended use, the evidence available and missing, what you must authorize, and when the work is done. The skill asks once, only for what changes the result.
Research under your instructions
Public web research is off by default. When you turn it on, scope comes from your words: allowed sources, time window, depth, and purpose. Every finding carries its URL, access date, passage, and identity binding, and nothing is attributed to a person from a name alone.
Calibrated, not confident
Facts, stated beliefs, revealed patterns, and speculation stay separate. Contradictions are preserved. Confidence describes support within the evidence examined, never how essentially a claim defines someone.

Interfaces

One skill, three interfaces.

The skill, the immutable package, and the source-packet contract are the same reviewed files. There is no separate hosted service.

Agent Skill

Install the skill through skills.sh, then ask for a dated working model from the sources you authorize.

bunx skills add hraness/ensoul#v0.3.5 --skill ensoul

Immutable package

The GitHub Release archive carries the complete skill, its references, and the dependency-free packet utilities.

bun add --exact https://github.com/hraness/ensoul/releases/download/v0.3.5/hraness-ensoul-0.3.5.tgz

Source packets

Message Like Me and Peopleblade export bounded, attributed, digest-checked evidence packets that the skill validates offline before reading.

bun scripts/validate-source-packet.ts \
  /absolute/private/path/subject.ensoul-source.json

Current verified release · @hraness/ensoul@0.3.5

Install and run one bounded corpus.

bunx skills add hraness/ensoul#v0.3.5 --skill ensoul
Use $ensoul to build a dated, evidence-calibrated, partial and revisable working model of <person> from <authorized sources>. State the intended use, audience, source cutoff, and any proxy authorization explicitly.

Release notes and verified assets. Review the skill before installation and start a new agent session afterward. Begin with a corpus small enough to inspect; add evidence when it supplies a missing period, context, source stratum, or meaningful contradiction. Read the full installation guide on GitHub.

Questions

Before you install.

Is Soulscrape a digital twin?

It can bootstrap a bounded reasoning proxy when the subject has authorized that use, but it does not claim to contain or reproduce a person. The output is a dated, purpose-shaped interpretation of selected evidence.

Can I use it to understand someone else?

Yes, for a privacy-minimized collaboration guide when you legitimately possess the evidence. That does not authorize voice imitation, character or fitness evaluation, consequential decisions, or a reusable assistant charter. Explicit subject authorization is required for proxy preparation.

Does it search the web about people?

Not by default. Web research turns on when you ask for it or name a URL, and it follows your instructions on sources, time window, and depth. It uses authenticated sources only when explicitly authorized, never bypasses access controls or collects contact details, and it stops when your questions are answered or the allowed sources are exhausted.

What does a valid source packet prove?

Structure, attribution fields, bounds, references, and integrity. The workflow still assesses identity binding, provenance, source strength, contradictions, and alternative explanations. A digest proves integrity, not truth.

Does installation inspect personal data?

No. The skill installation is inert and the package has no dependencies or lifecycle scripts. Evidence becomes visible only when you place authorized sources into an agent run or explicitly invoke a source-preparation command.

What happened to Ensoul?

Soulscrape is the same project under a new name since September 10, 2026. The packet schema, its ensoul.* identifiers, and the validator are unchanged so existing exporters keep working. Versions through 0.3.5 remain published as @hraness/ensoul.

The maker

Built by Ben Guo

Soulscrape is built by Ben Guo, a musician and builder, formerly a founder and engineering leader at companies including Venmo and Stripe, now building from Puerto Rico. It is published by Hraness under the MIT license and adapted from Rob Cheung's MIT-licensed build-person skill.

Model the person. Keep the boundaries.

Choose sources you are authorized to use, state the intended use, and ask for a dated working model.

Free and MIT licensed. An Agent Skill for Claude Code, Codex, Cursor, and compatible agents. Current verified release @hraness/ensoul@0.3.5.