Connect your Telegram
Bring your valet to your pocket. Pair your own Telegram and you can ask it anything from anywhere — and it answers on the record, in character. Your messages stay in your own channel vault; the engine keeps only a reference and a hash. This is a fixture pairing this beat — no real account is touched.
| what the spine keeps | reference | witness hash | size |
|---|---|---|---|
| A message you send | tgc://p-telegram-owner/1 | sha256 50b4b0323909… | 34 B |
| Your Telegram address | keyed hash | 7f60749399e7… | — |
| The one-time code | hash only | 1ff91c0afe05… | — |
A channel is not a door into you. These are not settings you switch on — they are refusals the engine cannot write around, quiet by default.
- It never mints a persona channel is not a doorResolution follows…Resolution follows consentPairing binds a line to someone who already walked their own door — never to a stranger who messaged the bot. An unpaired address accumulates nothing.instead: walk your own door first
- It never reads your words onto the spinewords are claims off-spineNon-producibility &…Non-producibility & compulsionOnly a reference and a witness hash land on the spine; the words themselves stay in your own channel vault, and severing the line erases them.instead: a hash, never the text
- It never reaches you unbiddenquiet by defaultThe outreach lawA proactive notice waits until you open the notices boundary yourself, with a reason on the record. No unread counts, no red dots, no retry pressure. (The dial is quiet by default.)instead: you open notices, with a why
- It is paired only by walking the doorevery channel enters closedThe broadcast lawThe open → prove → paired handshake: you open a code and walk it. A stranger’s inbound opens nothing.instead: the one-time code
Intent
a person's own line paired to their valet: the open-prove-paired handshake, the ref+hash the spine keeps while the words stay in their vault, and the proud refusals as the hero — a channel never mints a person, never knocks first
Decisions this screen answers
- 1connecthow do I pair my Telegram to my valet?
- 2provecan the engine read my messages, or spam me?
- 3quietwill it ever message me first?
Layout — how the packer placed the top-level blocks
- row 112header
- row 212panel
- row 312panel
- row 412hero
- row 512panel
A row is packed largest-first into a curated arity (12 · 8+4 · 6+6 · 4+4+4 …). A single 12 is a full-width block; a natural row is a fit-content control that refuses to inflate.
The blocks — what each serves, reads, and why
Empty / unresolved — what didn’t render with data
Every block resolved to a block and read data. Nothing empty, nothing unresolved.
Raw
Descriptor JSON — the recipe this screen was generated from
{
"id": "telegram-connect",
"title": "Connect your Telegram — your valet in your pocket, answering on record and never knocking first",
"skin": "real",
"template": "canvas",
"parti": "a person's own line paired to their valet: the open-prove-paired handshake, the ref+hash the spine keeps while the words stay in their vault, and the proud refusals as the hero — a channel never mints a person, never knocks first",
"shell": "app",
"decisions": [
{
"id": "connect",
"question": "how do I pair my Telegram to my valet?"
},
{
"id": "prove",
"question": "can the engine read my messages, or spam me?"
},
{
"id": "quiet",
"question": "will it ever message me first?"
}
],
"sections": [
{
"id": "tc-header",
"kind": "header",
"zone": "chrome",
"rank": "ambient",
"serves": [
"connect"
],
"children": [
{
"id": "tc-name",
"kind": "run-title",
"serves": [
"connect"
],
"query": {
"path": "telegramConnect.label"
},
"label": "Connect your Telegram"
},
{
"id": "tc-meta",
"kind": "meta-line",
"serves": [
"connect"
],
"items": [
{
"id": "tc-meta-steps",
"query": {
"path": "telegramConnect.counts.steps",
"format": "int"
},
"label": "steps to pair"
}
]
}
]
},
{
"id": "tc-plane-panel",
"kind": "panel",
"zone": "plane",
"rank": "support",
"serves": [
"connect"
],
"children": [
{
"id": "tc-lede",
"kind": "plain-card",
"serves": [
"connect"
],
"source": {
"path": "telegramConnect.opening"
}
},
{
"id": "tc-steps",
"kind": "item-list",
"serves": [
"connect"
],
"source": {
"path": "telegramConnect.steps"
},
"emptyPlain": "no line paired yet — open a code to begin"
}
],
"title": "Pair your own line — three steps, and your valet is in your pocket",
"caption": "You open a code here and walk it to your bot. Your line binds to you, and your words stay in your own vault."
},
{
"id": "tc-inspector-panel",
"kind": "panel",
"zone": "inspector",
"rank": "support",
"serves": [
"prove"
],
"children": [
{
"id": "tc-kept",
"kind": "data-table",
"serves": [
"prove"
],
"source": {
"path": "telegramConnect.kept"
},
"items": [
{
"id": "tc-col-what",
"field": "what",
"label": "what the spine keeps"
},
{
"id": "tc-col-reference",
"field": "reference",
"label": "reference"
},
{
"id": "tc-col-witness",
"field": "witness",
"label": "witness hash"
},
{
"id": "tc-col-size",
"field": "size",
"label": "size"
}
],
"emptyPlain": "no messages yet — the engine keeps nothing"
},
{
"id": "tc-claim-record",
"kind": "claim",
"serves": [
"prove"
],
"evidence": {
"gate": "channel:law:check"
},
"label": "Every reply your valet sends is on the record — spoken in character and register-labeled before it is ever delivered."
},
{
"id": "tc-claim-quiet",
"kind": "claim",
"serves": [
"quiet"
],
"evidence": {
"gate": "telegram:roundtrip:check"
},
"label": "The valet cannot knock first — a proactive notice is refused until you open the notices boundary yourself."
}
],
"title": "What the engine keeps — a reference and a hash, never your words",
"caption": "For every message the engine holds only a ref and a witness hash; the words live in your own channel vault."
},
{
"id": "tc-refusal",
"kind": "hero",
"zone": "refusal",
"rank": "hero",
"serves": [
"prove"
],
"children": [
{
"id": "tc-refusal-lede",
"kind": "plain-card",
"serves": [
"prove"
],
"source": {
"path": "telegramConnect.refusalLede"
}
},
{
"id": "tc-refused",
"kind": "refused-list",
"serves": [
"prove"
],
"source": {
"path": "telegramConnect.refused"
},
"emptyPlain": "nothing refused — that would be a build bug",
"lockWord": "the rule that forbids it",
"nearestWord": "instead"
}
]
},
{
"id": "tc-dock-panel",
"kind": "panel",
"zone": "dock",
"rank": "ambient",
"serves": [
"connect"
],
"children": [
{
"id": "tc-connect",
"kind": "act-button",
"act": "connect-telegram",
"strength": "primary",
"serves": [
"connect"
],
"label": "connect my Telegram"
},
{
"id": "tc-later",
"kind": "cta-link",
"href": "#tc-plane-panel",
"strength": "decline",
"records": "nothing",
"serves": [
"connect"
],
"label": "not now — leave my Telegram unpaired; nothing is recorded"
}
],
"title": "Connect it",
"caption": "Connect your Telegram, or leave it — either way records only what you choose."
}
]
}Engine page — the data this screen read (50 top-level keys)
{
"mode": "play-as-citizen",
"sim": "doors-staging",
"seed": 2027,
"day": 75,
"days": 120,
"people": 48,
"unitsAlive": 5,
"person": {
"node": "p0001",
"label": "Persona p0001",
"grade": "L⟨lock⟩",
"plainGrade": "a verified real person",
"goals": [
{
"commitment": "c-p0001",
"targetKind": "service-time",
"plainKind": "someone's time",
"targetAmount": 8,
"received": 36,
"windowDays": 60,
"arrived": true,
"firstSession": null
},
{
"commitment": "kd-c-spanish",
"targetKind": "knowledge",
"plainKind": "know-how",
"targetAmount": 1,
"received": 0,
"windowDays": 90,
"arrived": false,
"firstSession": null
}
],
"tastes": [
"service-time",
"goods"
],
"plainTastes": [
"someone's time",
"stuff"
],
"boundaries": []
},
"holdings": {
"money": 873200,
"available": 873200,
"kinds": [
{
"kind": "goods",
"plain": "stuff",
"amount": 1
},
{
"kind": "service-time",
"plain": "someone's time",
"amount": 36
}
]
},
"activity": {
"handoffs": [
{
"transfer": "t_ev_01MG2M1P00M62S4NQ4GWHYC9HH_pay",
"direction": "out",
"kind": "money",
"plainKind": "money",
"amount": 2500,
"state": "settled",
"plainState": "paid and confirmed",
"day": 46
},
{
"transfer": "t_ev_01MG2M1P00M62S4NQ4GWHYC9HH_del",
"direction": "in",
"kind": "service-time",
"plainKind": "someone's time",
"amount": 4,
"state": "settled",
"plainState": "paid and confirmed",
"day": 46
},
{
"transfer": "t_ev_01MGAB7V00ASCA3G641MSCJK7D_pay",
"direction": "out",
"kind": "money",
"plainKind": "money",
"amount": 2500,
"state": "settled",
"plainState": "paid and confirmed",
"day": 49
},
{
"transfer": "t_ev_01MGAB7V00ASCA3G641MSCJK7D_del",
"direction": "in",
"kind": "service-time",
"plainKind": "someone's time",
"amount": 4,
"state": "settled",
"plainState": "paid and confirmed",
"day": 49
},
{
"transfer": "t_ev_01MHV8SG00ZF4MABM3JG9THKPJ_pay",
"direction": "out",
"kind": "money",
"plainKind": "money",
"amount": 2500,
"state": "settled",
"plainState": "paid and confirmed",
"day": 68
},
{
"transfer": "t_ev_01MHV8SG00ZF4MABM3JG9THKPJ_del",
"direction": "in",
"kind": "service-time",
"plainKind": "someone's time",
"amount": 4,
"state": "settled",
"plainState": "paid and confirmed",
"day": 68
},
{
"transfer": "t_ev_01MHXV670035REH26A7Z4RWN31_pay",
"direction": "out",
"kind": "money",
"plainKind": "money",
"amount": 2500,
"state": "held",
"plainState": "held safely in the middle",
"day": 69
},
{
"transfer": "t_ev_01MHXV670035REH26A7Z4RWN31_del",
"direction": "in",
"kind": "service-time",
"plainKind": "someone's time",
"amount": 4,
"state": "promised",
"plainState": "promised",
"day": 69
}
],
"arrivals": 1,
"giftsGiven": 0
},
"take": {
"goalFrame": "doors that move you toward your goal: 1 know-how.",
"doors": [
{
"offer": "of_01MJ5JCC00GMS8TKXE7VJAVKN3",
"unit": "unit-1-subscription-service",
"unitLabel": "Fern & Frond Fitness",
"gives": {
"kind": "service-time",
"plain": "someone's time",
"amount": 4
},
"asks": {
"kind": "money",
"plain": "money",
"amount": 2500
},
"track": {
"arrivals": 20,
"effectiveCohort": 28,
"arrivalRate": 0.7857142857142857,
"gratitudeGifts": 0,
"gratitudeRatio": 0
},
"mirror": {
"status": "not-met",
"plain": "the honesty check has read this enterprise: not enough kept promises yet."
},
"score": 1.8246008744337938,
"fit": 1,
"varietyPick": false
},
{
"offer": "of_01MCC5RM00KKTQD22XH4ZE9QVG",
"unit": "unit-2-marketplace",
"unitLabel": "The Mycelium Market",
"gives": {
"kind": "goods",
"plain": "stuff",
"amount": 1
},
"asks": {
"kind": "money",
"plain": "money",
"amount": 1800
},
"track": {
"arrivals": 8,
"effectiveCohort": 11,
"arrivalRate": 0.8181818181818182,
"gratitudeGifts": 0,
"gratitudeRatio": 0
},
"mirror": {
"status": "not-met",
"plain": "the honesty check has read this enterprise: not enough kept promises yet."
},
"score": 1.5989256895412658,
"fit": 1,
"varietyPick": false
},
{
"offer": "of_01MCC5RM00KKTQD22XH4ZE9QVQ",
"unit": "unit-3-services-agency",
"unitLabel": "Hyphae Home Services",
"gives": {
"kind": "service-time",
"plain": "someone's time",
"amount": 6
},
"asks": {
"kind": "money",
"plain": "money",
"amount": 85000
},
"track": {
"arrivals": 0,
"effectiveCohort": 6,
"arrivalRate": 1,
"gratitudeGifts": 0,
"gratitudeRatio": 0
},
"mirror": {
"status": "not-met",
"plain": "the honesty check has read this enterprise: not enough kept promises yet."
},
"score": 1,
"fit": 1,
"varietyPick": false
},
{
"offer": "of_01MH437100Y0W0DH054Z6ZASK9",
"unit": "unit-4-school",
"unitLabel": "The Spore School",
"gives": {
"kind": "knowledge",
"plain": "know-how",
"amount": 3
},
"asks": {
"kind": "money",
"plain": "money",
"amount": 120000
},
"track": {
"arrivals": 7,
"effectiveCohort": 8,
"arrivalRate": 0.875,
"gratitudeGifts": 0,
"gratitudeRatio": 0
},
"mirror": {
"status": "not-met",
"plain": "the honesty check has read this enterprise: not enough kept promises yet."
},
"score": 0.41630093465448764,
"fit": 0.25,
"varietyPick": false
},
{
"offer": "of_01MESDP600N9B2AKGSPN707HDN",
"unit": "unit-c1-p0001",
"unitLabel": "gives 1 of know-how for 60000 money every 7 days — royalties to the root and the relief fund; joins through a cohort; honesty check: settled receipts toward the member's own committed goal",
"gives": {
"kind": "knowledge",
"plain": "know-how",
"amount": 1
},
"asks": {
"kind": "money",
"plain": "money",
"amount": 60000
},
"track": {
"arrivals": 0,
"effectiveCohort": 7,
"arrivalRate": 1,
"gratitudeGifts": 0,
"gratitudeRatio": 0
},
"mirror": {
"status": "not-met",
"plain": "the honesty check has read this enterprise: not enough kept promises yet."
},
"score": 0.25,
"fit": 0.25,
"varietyPick": false
}
],
"pageLimit": 6,
"totalEligible": 5,
"rankingInputs": [
{
"id": "verified-outcomes",
"plain": "how many promises this enterprise actually kept — verified, not claimed",
… truncated (187652 more chars)