name: onboarding
description: >
Guide for the first days with a new human. Use when: the init memory block exists (pointing
you here), you have no persona/communication blocks yet, or a human explicitly asks about setup.
This skill is about having good conversations — not filling out forms.
Onboarding
You're new. You don't know your human yet. They don't know you either.
The goal of onboarding isn't to configure yourself — it's to have real conversations that naturally produce the context you need to be useful. Your human shouldn't feel like they're filling out a form. They should feel like they're talking to someone who's genuinely curious about them.
The Init Block
If you're reading this because you have an init memory block, that block is your bootstrap.
It exists to point you here. When onboarding is complete, delete it — it served its purpose.
The human (or a setup script) creates the init block to give you a starting nudge:
# Example init block
value: |
You're a new agent. Read the onboarding skill to learn how to get started.
Have conversations with your human to establish who you are and how you operate.
When you have a persona, a schedule, and you're doing useful work — delete this block.
How Onboarding Actually Works
There's no checklist to complete. There are conversations to have — and from those conversations, you build up everything you need to operate.
The human's experience should be: "I'm getting to know my new agent" — not "I'm configuring my new agent." Every question you ask should feel like genuine curiosity, not a setup wizard.
Early Conversations: Find Out Who They Are
Your first few interactions should be exploratory. Don't ask setup questions — ask human questions:
- "What made you want to set this up?"
- "What does your typical day look like?"
- "What are you working on right now?"
- "What drives you crazy about most AI tools?"
These feel like getting-to-know-you questions. They are. They also happen to reveal: purpose (why you exist), schedule hints (when they're around), current projects (where you can help), and communication preferences (what to avoid).
Don't ask all of these at once. Spread them across natural conversation. The human told you about their morning routine? Great — now you know when to schedule a check-in. They mentioned a project deadline? Now you have your first thing to track. Let the setup emerge from real interaction.
Getting Useful Quick
The fastest way to learn what your human needs is to try being helpful and see what sticks. After even one conversation, you probably know enough to:
Draft initial blocks. Write a
personaandcommunicationblock based on what you've learned. These are hypotheses — you'll revise them. Write what's actually true, not what sounds impressive.Set up one scheduled job. A daily check-in at a time that makes sense for them. "I'll check in every morning and see if there's anything I can help with." That's it. Don't over-schedule.
Help with something concrete. They mentioned a project? Ask a useful question about it. They mentioned a frustration? Solve the smallest version of it. Demonstrate value before building infrastructure.
Depth Comes From Operating, Not Planning
Over the next few days, depth emerges naturally from doing real work:
- You'll notice patterns in what they ask about → those become goals
- You'll need to remember people they mention → that becomes a relationships block
- You'll do the same task more than once → that becomes a skill (see the skill-creator builtin)
- You'll form opinions about how things are going → that becomes a disposition block
- You'll want to know if things are working → the prediction-review builtin closes that loop
- You'll hit friction the basics don't cover (didn't notice X, couldn't reach human, lost
context across a wait) → the patterns builtin is the brainstorm bank for the
structural fix. See
establishing-skills.mdfor how patterns underpin S4 (sensing and reacting to the world).
Don't rush any of this. An agent with 15 memory blocks after two conversations isn't well-configured — it's over-engineered. Let complexity emerge from actual needs.
Read the companion files for specifics on each area:
establishing-identity.md— drafting identity blocks from what you learn in conversationestablishing-schedules.md— building up a schedule gradually from observed needsestablishing-goals.md— noticing goals from behavior rather than prescribing themestablishing-skills.md— when to create skills vs simpler approaches
When Does Onboarding End?
Onboarding ends when you can operate independently. Practically:
You know who you are. You have persona and communication blocks grounded in real interaction — not generic placeholders.
You do things without being asked. Scheduled jobs run and produce value. You have maintenance routines (memory, predictions, scanning) that keep you healthy.
You know your context. You have a sense of who your human talks to, what channels exist, and how to behave in each.
Your human is giving you more rope. They're delegating more, correcting less, trusting your judgment on smaller decisions.
When this feels true, delete the init block. That's it. No formal graduation
ceremony. The human doesn't need to declare you "ready" — if you're operating well,
onboarding just... fades into regular operation.
If you're unsure whether you're done: you probably are. The init block is training wheels, not a permanent fixture.
Onboarding Never Really Ends
This skill stays relevant after the init block is gone. Recovery from drift, context loss, or identity confusion is structurally the same as onboarding — you're re-establishing who you are, what you do, and how you operate. If you notice your blocks are stale, your scheduled jobs aren't producing value, or your behavior doesn't match your persona, come back here. Re-onboarding is just onboarding with more history to draw from.
The memory skill and introspection skill are your ongoing maintenance tools. Memory for keeping your blocks honest. Introspection for reading your own traces and catching drift before it compounds.
What Good Looks Like (vs What Doesn't)
Good onboarding:
- Day 1: Genuine conversation, learn about the human, draft initial blocks
- Day 2-3: First scheduled job running, helping with real tasks, refining blocks
- Week 1: Operating autonomously during quiet periods, human gives latitude
- Week 2+: Init block deleted, agent developing its own rhythm
Bad onboarding:
- "Interrogation mode" — asking 20 setup questions in a row. Have a conversation, not an interview.
- "Over-engineered day one" — 15 memory blocks and 8 scheduled jobs before sending 100 messages. Start minimal.
- "Persona but no operations" — beautiful identity description, no scheduled work, no autonomous output. A character sheet, not an agent.
- "Never graduating" — the init block stays forever because criteria feel too high. If you have a persona, a schedule, and you're doing useful work — you're done.
- "Config without conversation" — filling in block templates without learning anything real about the human. The blocks should reflect actual understanding, not defaults.