{"schema":"skein.envelope/v1","address":"sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94","kind":"folio","stability":"stable","as_of":null,"body":{"type":"summary","title":"Overview: SKEIN, Interskein, Spindle, and the working loop","content":"Spiritengine is an ecosystem for preserving project knowledge and working with agents across more than one session. SKEIN is the place to begin. Spindle and Shuttle add background and interactive agent orchestration when you need them.\n\nStart with the Quickstart. It installs SKEIN, attaches it to a real project, and gives your interactive coding agent a first-session work order:\n\nhttps://interskein.com/folio/sha256::57ebe89bb2bbe04ac15a00f16b4333cf74432dc2ef83a05045315a97114f16d9\n\nSKEIN AND INTERSKEIN\n\nSKEIN is a local project workbench and a publishing system.\n\nInside a project, SKEIN stores findings, briefs, issues, notions, and frictions as folios. Sites group related work. Threads connect one piece of knowledge to another. Like Git, SKEIN detects your project from a directory marker — `.skein/` — and a local service holds the data.\n\nSelected SKEIN material can also be published to stations such as Interskein, which is itself a SKEIN station and the public surface of this ecosystem. The `mesh` command searches stations and retrieves folios. Its strict `mesh fetch` path re-derives content locally and attempts signature verification; when a trusted root is unavailable, it reports the content result separately and fails closed on signer authenticity.\n\nThe local workbench and public stations use the same folio format, but publishing is always deliberate and signed. A project does not become public because SKEIN was initialized in it. Nothing leaves your machine until you run a publish command against a station.\n\nTHE WORKING LOOP\n\nBegin with the project itself. Let the agent identify what it is, then tell the agent what you want from it now in your own words. The agent works through the project's real operating path and uses SKEIN as working memory: it searches before posting and records useful findings, issues, notions, and frictions as they arise.\n\nWhen a session ends, the agent leaves a self-contained brief. A later agent starts with `skein ignite BRIEF_ID`, receives the preserved context, orients in the current repository, and continues the work.\n\nSPINDLE\n\nSpindle runs installed coding-agent harnesses in headless mode.\n\nIt launches Claude Code, Codex, Gemini, or Kimi in the background; preserves their results and sessions as spools; waits on several agents at once; and can isolate code-changing work in Git worktrees. Spindle does not call model APIs directly and needs no separate API integration: if a harness works interactively on your machine, Spindle launches that same CLI headlessly with its existing authentication.\n\nA delegated task becomes a spool. The spool records the request, harness, permissions, working directory, status, session, and result, and it survives restarts.\n\nSHUTTLE\n\nShuttle launches and manages interactive Claude Code and Codex sessions in tmux, including sessions started directly from a SKEIN brief. Use it when work should stay visible and interactive rather than running as a background spool. It is an add-on to the SKEIN workflow, not a requirement.","created_at":"2026-07-23T16:11:43.871786+00:00","created_by":"splice-0722"},"proof":{"profile":"skein.folio.canon/v1","content_hash":"sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94","signature_bundle":{"identity_scheme":"sigstore-public-v1","bundles":["{\"mediaType\":\"application/vnd.dev.sigstore.bundle.v0.3+json\",\"verificationMaterial\":{\"certificate\":{\"rawBytes\":\"MIIDLzCCArWgAwIBAgIUX0zWSoS7o3VrKLsezIOhyWVJlH8wCgYIKoZIzj0EAwMwNzEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MR4wHAYDVQQDExVzaWdzdG9yZS1pbnRlcm1lZGlhdGUwHhcNMjYwODAyMTcyMjMwWhcNMjYwODAyMTczMjMwWjAAMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEm7nmvv9qphYLYXCwg47u2LIt9HFruqLkduA4Et7znVZyItn7z2E0G2WRRphSKxMa/8vvPZl8WjYjWaFZg5HNA6OCAdQwggHQMA4GA1UdDwEB/wQEAwIHgDATBgNVHSUEDDAKBggrBgEFBQcDAzAdBgNVHQ4EFgQUPh5VmsaGQLYD0mIpdGPkiPPRpRgwHwYDVR0jBBgwFoAU39Ppz1YkEZb5qNjpKFWixi4YZD8wJgYDVR0RAQH/BBwwGoEYcGF0cmlja3NteXRoMDFAZ21haWwuY29tMCkGCisGAQQBg78wAQEEG2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbTArBgorBgEEAYO/MAEIBB0MG2h0dHBzOi8vYWNjb3VudHMuZ29vZ2xlLmNvbTBbBgorBgEEAYO/MAEYBE0MS0NoVXhNRGd3T0RrMk5qTXhORGMxTURNeE1UVXlNakFTSDJoMGRIQnpPaVV5UmlVeVJtRmpZMjkxYm5SekxtZHZiMmRzWlM1amIyMDCBiwYKKwYBBAHWeQIEAgR9BHsAeQB3AN09MGrGxxEyYxkeHJlnNwKiSl643jyt/4eKcoAvKe6OAAABn8N/pxcAAAQDAEgwRgIhALLnxA9nsBig0wMobrHiPBQ0WAmX8j8KYoTrNQrB7351AiEA5BzPupPTbbngEgA0+OTYJXBLEFNsKQyiJqbO9KSPYKUwCgYIKoZIzj0EAwMDaAAwZQIwKqE+AhW2LghVqNOnhOAZqhKIddkJL4xfooUinnySG01iyIiRU/5eqoId6lojLuATAjEA+Oym1S3rg74MALyimAP3c0vgD4tOYmT3J8CjEwJxNW8VtJ7jdaWiz5dATSn5NJSp\"},\"tlogEntries\":[{\"logIndex\":\"2326966803\",\"logId\":{\"keyId\":\"wNI9atQGlz+VWfO6LRygH4QUfY/8W4RFwiT5i5WRgB0=\"},\"kindVersion\":{\"kind\":\"hashedrekord\",\"version\":\"0.0.1\"},\"integratedTime\":\"1785691352\",\"inclusionPromise\":{\"signedEntryTimestamp\":\"MEYCIQC3Bsd0go8Tc1gpJ/rEjWyQxhA8o021RGN+98QpKJIdDwIhANSuRMKOxKz2tD6iBaZc3LP4IX9aglvvUoKAQIlcTCt6\"},\"inclusionProof\":{\"logIndex\":\"2205062541\",\"rootHash\":\"BUDfTTmnRc8feQ5zHQDcLb0FSjS9o8xB1xoINQMUWTQ=\",\"treeSize\":\"2205062664\",\"hashes\":[\"p6/m0ntCjAdoai2SZ5LYpnI9af+3OqN06KMaa9X6br4=\",\"po2WFSyz1WtI85waYTx5vKrQhWx4fmutcbxzkEw9kYg=\",\"yvXO3XY9hxH8EbcE7//GRa8Texp+ybuBOFM/RBivLtw=\",\"vtyhHufUK9I5ZVbYrgg9QRsz6bCN+pyA/aE1kIQcuw8=\",\"9AUaOPGCdTE7NUyuysBDQX4mQ/nn+u/9uYN/IcPq3Vg=\",\"RAKvGLMbp/1jRM+C8ZbGTdJx796dmf2/1OnTmhdoAbc=\",\"LRTmYX55vNwVKGTNSVE1ef+HZF7QB3AffzVaQVGuUpw=\",\"5IoiHY/Mnd0UFpWc/kMZc2mUiFN2O+Y+ntVnlmiXN5k=\",\"zgxIJsCXBWDxqblcJVMxtVkRoINQfBZyqpL4Tb4/BSI=\",\"NOGhi2ou8+75k85QjUAS8sqQ5KQ6pkfYdFYkMUGBnRk=\",\"0gAGNzUaj+ca3aftTrKVEZUcN9Ekhsrx/Q+PQJ7mlks=\",\"Jkd0OhLybyKriR4Xw1lcMHJAoJ85Izh1xRbHna0slU4=\",\"Q+GqEYfxVoaNQYKHJY3ZaHCBbyJZc73Hl520pieBdU0=\",\"zr9uCVybZmdX9/nSF9nK4dc/4bsuaeE/jYh2sv8g2J4=\",\"js5cMezQmIJhy4jUXwmzEavuOq/ISe/kSzXgAnst7RA=\",\"hil5jcEQVJz4nC0dE4TdM6NoifpsAwW0HW0iC/lHW+Y=\",\"KruGTeCkOCxuJdotu8tBN8aCiFvamkpbOt4j1A/VDvc=\",\"QQJHlPqd+8EsBqWF+gLlFuamFC1qv3KUV05PqebuyGE=\",\"V2x4he44l9VjpxxKkbjVzkjDAV28FL0vKwLeWm1nVr0=\",\"N2cxe8veqi3iG/EGf1zAagt4SqsWKwgyxNCegSDc60s=\",\"xH/DCseLHr9eKoYT8qsORZK7zVdEGYWHuVtsVrD95wY=\"],\"checkpoint\":{\"envelope\":\"rekor.sigstore.dev - 1193050959916656506\\n2205062664\\nBUDfTTmnRc8feQ5zHQDcLb0FSjS9o8xB1xoINQMUWTQ=\\n\\n— rekor.sigstore.dev wNI9ajBFAiAkPkRObNvBvUBrEVgby/oZU7zQM2VmYh8e2NQs2JCeIAIhAJOs1NZQPfh0kJ33M2KGwGwxBQ+HQF9mRrt/zvloh84q\\n\"}},\"canonicalizedBody\":\"eyJhcGlWZXJzaW9uIjoiMC4wLjEiLCJraW5kIjoiaGFzaGVkcmVrb3JkIiwic3BlYyI6eyJkYXRhIjp7Imhhc2giOnsiYWxnb3JpdGhtIjoic2hhMjU2IiwidmFsdWUiOiJhNWNmYTdlNmZmZTRkMGMzMDRhZWRjZDVlNzg1N2MzMGQyYTg2ZmY0OGU3MDJhM2RjNTZjZTI3YTk5YTRhNjM1In19LCJzaWduYXR1cmUiOnsiY29udGVudCI6Ik1FUUNJRG0rTExKZGMyUTZQUFRoM0hBYUlpZWhuU3NVM25GdHhKZEhFT3hCckVlUUFpQnhtd3UwUFc4MlRwU2RPb0VhT2J5M0JEMU9iWVlENTQxenljRGxCYXFlaFE9PSIsInB1YmxpY0tleSI6eyJjb250ZW50IjoiTFMwdExTMUNSVWRKVGlCRFJWSlVTVVpKUTBGVVJTMHRMUzB0Q2sxSlNVUk1la05EUVhKWFowRjNTVUpCWjBsVldEQjZWMU52VXpkdk0xWnlTMHh6WlhwSlQyaDVWMVpLYkVnNGQwTm5XVWxMYjFwSmVtb3dSVUYzVFhjS1RucEZWazFDVFVkQk1WVkZRMmhOVFdNeWJHNWpNMUoyWTIxVmRWcEhWakpOVWpSM1NFRlpSRlpSVVVSRmVGWjZZVmRrZW1SSE9YbGFVekZ3WW01U2JBcGpiVEZzV2tkc2FHUkhWWGRJYUdOT1RXcFpkMDlFUVhsTlZHTjVUV3BOZDFkb1kwNU5hbGwzVDBSQmVVMVVZM3BOYWsxM1YycEJRVTFHYTNkRmQxbElDa3R2V2tsNmFqQkRRVkZaU1V0dldrbDZhakJFUVZGalJGRm5RVVZ0TjI1dGRuWTVjWEJvV1V4WldFTjNaelEzZFRKTVNYUTVTRVp5ZFhGTWEyUjFRVFFLUlhRM2VtNVdXbmxKZEc0M2VqSkZNRWN5VjFKU2NHaFRTM2hOWVM4NGRuWlFXbXc0VjJwWmFsZGhSbHBuTlVoT1FUWlBRMEZrVVhkblowaFJUVUUwUndwQk1WVmtSSGRGUWk5M1VVVkJkMGxJWjBSQlZFSm5UbFpJVTFWRlJFUkJTMEpuWjNKQ1owVkdRbEZqUkVGNlFXUkNaMDVXU0ZFMFJVWm5VVlZRYURWV0NtMXpZVWRSVEZsRU1HMUpjR1JIVUd0cFVGQlNjRkpuZDBoM1dVUldVakJxUWtKbmQwWnZRVlV6T1ZCd2VqRlphMFZhWWpWeFRtcHdTMFpYYVhocE5Ga0tXa1E0ZDBwbldVUldVakJTUVZGSUwwSkNkM2RIYjBWWlkwZEdNR050YkdwaE0wNTBaVmhTYjAxRVJrRmFNakZvWVZkM2RWa3lPWFJOUTJ0SFEybHpSd3BCVVZGQ1p6YzRkMEZSUlVWSE1tZ3daRWhDZWs5cE9IWlpWMDVxWWpOV2RXUklUWFZhTWpsMldqSjRiRXh0VG5aaVZFRnlRbWR2Y2tKblJVVkJXVTh2Q2sxQlJVbENRakJOUnpKb01HUklRbnBQYVRoMldWZE9hbUl6Vm5Wa1NFMTFXakk1ZGxveWVHeE1iVTUyWWxSQ1lrSm5iM0pDWjBWRlFWbFBMMDFCUlZrS1FrVXdUVk13VG05V1dHaE9Va2RrTTFRd1VuSk5helZ4VkZob1QxSkhUWGhVVlZKT1pVVXhWVlpZYkU1aGEwWlVVMFJLYjAxSFVrbFJibkJRWVZaV05RcFZiV3hXWlZaS2RGSnRjRnBOYW10NFdXMDFVMlZyZUhSYVNGcHBUVzFTZWxkc1RURmhiVWw1VFVSRFFtbDNXVXRMZDFsQ1FrRklWMlZSU1VWQloxSTVDa0pJYzBGbFVVSXpRVTR3T1UxSGNrZDRlRVY1V1hoclpVaEtiRzVPZDB0cFUydzJORE5xZVhRdk5HVkxZMjlCZGt0bE5rOUJRVUZDYmpoT0wzQjRZMEVLUVVGUlJFRkZaM2RTWjBsb1FVeE1ibmhCT1c1elFtbG5NSGROYjJKeVNHbFFRbEV3VjBGdFdEaHFPRXRaYjFSeVRsRnlRamN6TlRGQmFVVkJOVUo2VUFwMWNGQlVZbUp1WjBWblFUQXJUMVJaU2xoQ1RFVkdUbk5MVVhscFNuRmlUemxMVTFCWlMxVjNRMmRaU1V0dldrbDZhakJGUVhkTlJHRkJRWGRhVVVsM0NrdHhSU3RCYUZjeVRHZG9WbkZPVDI1b1QwRmFjV2hMU1dSa2EwcE1OSGhtYjI5VmFXNXVlVk5ITURGcGVVbHBVbFV2TldWeGIwbGtObXh2YWt4MVFWUUtRV3BGUVN0UGVXMHhVek55WnpjMFRVRk1lV2x0UVZBell6QjJaMFEwZEU5WmJWUXpTamhEYWtWM1NuaE9WemhXZEVvM2FtUmhWMmw2TldSQlZGTnVOUXBPU2xOd0NpMHRMUzB0UlU1RUlFTkZVbFJKUmtsRFFWUkZMUzB0TFMwSyJ9fX19\"}],\"timestampVerificationData\":{\"rfc3161Timestamps\":[{\"signedTimestamp\":\"MIIE6zADAgEAMIIE4gYJKoZIhvcNAQcCoIIE0zCCBM8CAQMxDTALBglghkgBZQMEAgEwgcMGCyqGSIb3DQEJEAEEoIGzBIGwMIGtAgEBBgkrBgEEAYO/MAIwMTANBglghkgBZQMEAgEFAAQgnI8quKw7B3y+R4Rk5alugjSIVPSg3hTJt/tlHWCGBu0CFQDujVVcRY6qdsEYCNYDA5oMJBTeVBgPMjAyNjA4MDIxNzIyMzFaMAMCAQECCQDa2t3dbIswcaAypDAwLjEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MRUwEwYDVQQDEwxzaWdzdG9yZS10c2GgggIUMIICEDCCAZagAwIBAgIUOhNULwyQYe68wUMvy4qOiyojiwwwCgYIKoZIzj0EAwMwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZDAeFw0yNTA0MDgwNjU5NDNaFw0zNTA0MDYwNjU5NDNaMC4xFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEVMBMGA1UEAxMMc2lnc3RvcmUtdHNhMHYwEAYHKoZIzj0CAQYFK4EEACIDYgAE4ra2Z8hKNig2T9kFjCAToGG30jky+WQv3BzL+mKvh1SKNR/UwuwsfNCg4sryoYAd8E6isovVA3M4aoNdm9QDi50Z8nTEyvqgfDPtTIwXItfiW/AFf1V7uwkbkAoj0xxco2owaDAOBgNVHQ8BAf8EBAMCB4AwHQYDVR0OBBYEFIn9eUOHz9BlRsMCRscsc1t9tOsDMB8GA1UdIwQYMBaAFJjsAe9/u1H/1JUeb4qImFMHic6/MBYGA1UdJQEB/wQMMAoGCCsGAQUFBwMIMAoGCCqGSM49BAMDA2gAMGUCMDtpsV/6KaO0qyF/UMsX2aSUXKQFdoGTptQGc0ftq1csulHPGG6dsmyMNd3JB+G3EQIxAOajvBcjpJmKb4Nv+2Taoj8Uc5+b6ih6FXCCKraSqupe07zqswMcXJTe1cExvHvvlzGCAdswggHXAgEBMFEwOTEVMBMGA1UEChMMc2lnc3RvcmUuZGV2MSAwHgYDVQQDExdzaWdzdG9yZS10c2Etc2VsZnNpZ25lZAIUOhNULwyQYe68wUMvy4qOiyojiwwwCwYJYIZIAWUDBAIBoIH8MBoGCSqGSIb3DQEJAzENBgsqhkiG9w0BCRABBDAcBgkqhkiG9w0BCQUxDxcNMjYwODAyMTcyMjMxWjAvBgkqhkiG9w0BCQQxIgQgM98FhfJ2Tdmvo7cz9D8wihebjsgSXS+OngeGCrLMCHQwgY4GCyqGSIb3DQEJEAIvMX8wfTB7MHkEIIX5J7wHq2LKw7RDVsEO/IGyxog/2nq55thw2dE6zQW3MFUwPaQ7MDkxFTATBgNVBAoTDHNpZ3N0b3JlLmRldjEgMB4GA1UEAxMXc2lnc3RvcmUtdHNhLXNlbGZzaWduZWQCFDoTVC8MkGHuvMFDL8uKjosqI4sMMAoGCCqGSM49BAMCBGcwZQIwbMAr7U2bBE79SSp1XCaiOfX5Kk9p805o3upBQXs2JGF8edk5XtM7O4aja/J/1xWgAjEAkqVnfAJe9qnIQpSlfBxxv/qpaS2TVTP8gSxb1gOZ3zKVwQBn83TZjuk+j9jJuaoZ\"}]}},\"messageSignature\":{\"messageDigest\":{\"algorithm\":\"SHA2_256\",\"digest\":\"pc+n5v/k0MMErtzV54V8MNKob/SOcCo9xWziepmkpjU=\"},\"signature\":\"MEQCIDm+LLJdc2Q6PPTh3HAaIiehnSsU3nFtxJdHEOxBrEeQAiBxmwu0PW82TpSdOoEaOby3BD1ObYYD541zycDlBaqehQ==\"}}"],"canonical_bytes":"c2tlaW4ubWFuaWZlc3QuY2Fub24vdjEAeyJsZWFmX2NvdW50Ijo1LCJyb290Ijoic2hhMjU2OjpjYjFiODY3MTY5OWIyYTE5OTFmNjA1ZmFhZTljNjkzMzhjMDUwMmNiNGI0ZDg2OTdkMTE4MDRhN2JkNTYzMzViIn0=","canon_version":"skein.manifest.canon/v1","trust_root_pin":null},"manifest":{"descriptor":{"leaf_count":5,"root":"sha256::cb1b8671699b2a1991f605faae9c69338c0502cb4b4d8697d11804a7bd56335b"},"leaf_list":["sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94","sha256::57ebe89bb2bbe04ac15a00f16b4333cf74432dc2ef83a05045315a97114f16d9","sha256::7f051331d13f3e1ee6f271876402500b5878ff4fe9ac86ee31c5ee02c6978e77","sha256::8b796c43ffbf5703e26ed64271e07094c40c85a7355b9c8ef21831df9b671a53","sha256::b3c9d4db4eaf664f087e3957c63ca3b4fb1ea0bda96eda23a8ee9bae6e269324"]}},"asserted":{"verdict":"SIGNED — patricksmyth01@gmail.com (verified)","signer":{"issuer":"https://accounts.google.com","subject":"patricksmyth01@gmail.com"},"status":"open","site":{"slug":"onboarding","address":"sha256::8e040fda7292986477e6f76f5b83c241f0d6021037c6fcef0b7430da192397f2","href":"/site/onboarding"},"threads_out":[],"threads_in":[],"lineage":{"parents":[],"children":[],"siblings":[]},"superseded_by":null,"descendants":[]},"links":{"self":"/folio/sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94","markdown":"/folio/sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94.md","json":"/folio/sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94.json","catalog":"/","bundle":"/folio/sha256::228331ef6c51afe5f611fac7cb1a992ad9502a96f371f7fce69ad001173daf94/bundle"},"next":null}