The way into Senso when the user has not said which path they want. Use for "get me started with senso" (the phrase they are given to paste), "set up Senso", "run onboarding", "help me with Senso", or any ask for help with Senso that names no material and no path. It says what Senso is, offers the two paths — the Verification Loop and Shared Context — and hands to the one they pick. A user who names a path up front belongs to that path's skill, not here; a user who names material to save belongs to senso-context-layer. This skill runs no setup and no loop of its own.
npx @senso-ai/shipables install senso-ai/senso-quickstartOne read, one message, one hand-off. This skill owns nothing else: the setup chores belong to the two setup skills, the work belongs to the two flow skills, and every command belongs to a module.
| They want | Skill |
|---|---|
| Verification Loop — AI models citing a verified page about the brand | senso-verification-loop, which runs senso-verification-loop-setup first when the organization is not set up |
| Shared Context — the knowledge base as shared context for the team's agents | senso-shared-context, which runs senso-shared-context-setup first when needed |
Never hijack a stated request. "Save revenue.pdf to Senso" is a save — senso-context-layer's
— even on an empty organization, and even if the starter phrase is pasted later. An empty context
layer is not permission to run a welcome.
A named path skips the question. "Let's go through the Verification Loop", "Shared Context", "fill another gap", "where do we stand" — the user has answered. Load that skill with the one-sentence welcome kept and the question dropped. Asking what they already said is the redundant turn that loses people.
A vague start always gets the question — never a guess from the organization's state. An org with an industry and tracked prompts looks like a Verification Loop org; it records what someone did, not what this person wants. A teammate on an org set up for the loop last week may want Shared Context today. One click costs less than a wrong path.
No recommendation on the path question. Every other choice box in these skills marks one option (Recommended); this one does not, on purpose. The two paths are different jobs, not a better and a worse way to do one job, and marking either steers a user who has no basis to be steered.
Say what this is for before asking for anything. The welcome names the outcome of each path in one sentence each. A user who does not know what the paths are for cannot choose between them.
The organization's name, in a sentence. Never the record. whoami returns an id, a tier and a
key prefix, and printing them back looks like diligence — "Free tier" and a key expiry are the two
lines you would least choose to show a room. Say the name; drop the rest.
Never narrate the machinery. No rules recited, no ids, no checks. The user sees a welcome and a question. The one line before the welcome, if there is one, is "Checking which organization you're on…" — never "I'll load the quickstart skill".
A choice is offered as options, not as a sentence. With Claude Code's AskUserQuestion, the
welcome's last line is the question text and each path is an option with its one-sentence
description. Without the tool (Codex, Cursor), the quoted prose is the ask. A dismissed box is not
an answer: say the two paths again as plain text, once, and take a spoken reply. A user who
answers something else entirely has told you the choice did not matter — take it as the answer.
senso whoami --output json --quiet # the key works; which organization
First, always, and once. It is the only thing between you and a wasted conversation: command not found, a stale key and a key for an org they did not expect all surface here, before anything
is spent. If it fails, load senso-context-layer → references/troubleshooting.md → Auth and
environment and stop. Do not run it again downstream — hand the organization's name to the
skill you route to; every module accepts it in place of a second call.
Nothing else is read here. Which path they want is not in the organization's state.
Welcome to Senso. You're on Harborview Systems. Senso is a context layer: one place for what's true about your brand, which AI models can cite and your own agents can work from. Two ways to use it:
Verification Loop: I'll find questions people in your industry ask AI models where a competitor gets named and you don't. Then we publish a verified answer, with every line traced back to your own documents.
Shared Context: your team's knowledge in one place every teammate's agent reads from and adds to — an agent asks, nothing on file answers, the person who knows writes it down, the next agent finds it.
What would you like to do?
Options: Verification Loop · Shared Context. No (Recommended). Each option's description is its one sentence above, so the box makes sense to someone who skipped the message.
| What they picked, or said up front | Load |
|---|---|
| Verification Loop — or any of "verification loop", "fill another gap", "where do we stand", "how do I rank", "who's beating us", "check what the models say about us" | senso-verification-loop. Its first act is a two-read check; a bare organization is handed to senso-verification-loop-setup and comes back. Say nothing about setup here |
| Shared Context — or "shared context", "set up a knowledge base my agents use" | senso-shared-context |
| A single setup chore by name — "set my industry", "what industry are we", "is my brand name right" | senso-verification-loop-setup, which runs only that chore |
| Named material — a file, a URL to pull in, a note to remember | senso-context-layer. Not a path; never the question |
| Something else | Take it as the answer and hand to whichever skill owns it. Do not re-ask |
The hand-off is silent. Load the skill and follow it; the next thing the user sees is that skill's first message. No "great, starting the Verification Loop", no summary of what is about to happen — the path's own first message says what it is for, and a preamble before it is the same beat twice.
When the organization cannot run a path, the path's skill says so — an organization without the
GEO product finds out at the industry step and ends cleanly on a searchable context layer. Nothing
in whoami or org get says which product an organization has, so this skill does not try to
route around it.
No setup. Material, industry, brand name, content type, brand kit —
senso-verification-loop-setup; the Shared Context chores — senso-shared-context-setup.
No loop, no work. Finding a question, drafting, evaluating, publishing —
senso-verification-loop and the modules it loads.
No commands beyond whoami. Every write, search and listing belongs to a module, and the
module is the only place its mechanics are written down.
| They want | Skill |
|---|---|
| The Verification Loop, or where they stand | senso-verification-loop |
| Its setup chores | senso-verification-loop-setup |
| Shared Context | senso-shared-context / senso-shared-context-setup |
| Save, find or organize a document; import a website | senso-context-layer |
| The gap report | senso-gap-report |
| Draft or check content | senso-generate-verify |
| Publish | senso-publish |