Skip to main content
Glama
danielsoimu

altweb-context

by danielsoimu

ALTWEB — подписанные контекстные капсулы

Пишите в Markdown. Упаковывайте в самодостаточный, проверяемый, опционально зашифрованный артефакт. Позволяйте ИИ-агентам загружать его только после проверки подписи.

ИИ-агенты работают с контекстом в виде открытого текста: инструкции, персоны, навыки, файлы памяти. Ни у чего из этого нет происхождения — всё, что может записать эти файлы, может их отравить. ALTWEB даёт контексту цепочку хранения и заставляет загрузчик отказывать всему, у чего её нет:

  • Капсула — markdown, скомпилированный в один файл .altweb.html (или URL): содержимое сжато (deflate), опционально зашифровано (AES-256-GCM), опционально подписано (ECDSA P-256). Самодостаточна — открывается в любом браузере, проверяется офлайн, не требует сервера: вы передаёте файл, а не базу данных.

  • Проверенная загрузка контекста — MCP-сервер altweb-context загружает капсулу в вашего агента только если подпись действительна и открытый ключ подписанта находится в вашем файле доверия. Неподписанные, изменённые или недоверенные капсулы отклоняются при загрузке с явной причиной. Отказ — это поведение по умолчанию: пустой файл доверия отклоняет всё, подписанное или нет.

you write MD ──► altweb compile --sign ──► capsule (.altweb.html / URL)
                                              │
agent asks for context ──► altweb-context ──► verify signature + trust
                                              │
                              trusted ──► markdown injected
                          everything else ──► REFUSED (reason)

Пакеты

Пакет

Что это

@altweb/core

Безголовый движок: модель контента, кодек, криптография, markdown, санитизация

@altweb/cli

altweb compile / decode / verify / keygen

@altweb/mcp

altweb-context — MCP-сервер: load_capsule, verify_capsule, list_trusted_keys

@altweb/editor

Редактор в стиле Notion (на базе Novel) с экспортом капсулы в один клик

site/

Сайт документации (Astro + Starlight)

Related MCP server: repolens

Быстрый старт

npm install
npm run build

# create your signing identity (deterministic from a passphrase; only the
# public key + fingerprint are stored, in ~/.altweb/identity.json)
node packages/cli/dist/altweb.mjs keygen --save

# write, compile, sign
echo "# My agent's operating notes" > notes.md
node packages/cli/dist/altweb.mjs compile notes.md -o notes.altweb.html --sign

# verify anywhere, offline
node packages/cli/dist/altweb.mjs verify notes.altweb.html

Подключите загрузчик к MCP-клиенту (пример для Claude Code):

claude mcp add altweb-context -- node "$(pwd)/packages/mcp/dist/altweb-context.mjs"

Доверьте подписанту, добавив его полный открытый ключ в ~/.altweb/trusted-keys.json (сообщение об отказе UNTRUSTED_KEY выдаёт готовую запись; короткий отпечаток — это человеческая метка, а не якорь доверия):

{ "keys": [ { "name": "Me", "publicKey": "<base64url SPKI>", "fingerprint": "ab:12:..." } ] }

Что доказывает подпись — и чего она не доказывает

Действительная подпись доказывает, кто создал капсулу и что байты не повреждены. Она не делает содержимое безопасным или истинным. Файл доверия — это ваша политика; держите его коротким.

Выберите длинную парольную фразу. Идентичности детерминированно выводятся из вашей парольной фразы с фиксированной глобальной солью (именно поэтому они переносимы без хранения) — так что энтропия парольной фразы — это вся безопасность идентичности. Используйте фразу из 16+ символов в стиле diceware; инструменты обеспечивают минимальную стойкость.

Безопасность

Содержимое санитизируется с помощью DOMPurify при декодировании; артефакты несут CSP; кодек проверяет структуру с помощью zod. См. документацию site/ → Модель безопасности для полного описания, включая предостережение о зашифрованных капсулах (подпись покрывает расшифрованную полезную нагрузку, поэтому проверка завершается после расшифровки).

Благодарности

Создано на основе отличного открытого ПО: Novel (Apache-2.0) и Tiptap (MIT) для редактора; DOMPurify, marked, pako, zod, @noble/curves в движке. См. NOTICE.

Лицензия

ALTWEB имеет двойную лицензию:

  • Открытый исходный код: AGPL-3.0-or-later. Бесплатно для использования, изучения, изменения и распространения — с одним ключевым обязательством: если вы изменяете ALTWEB и распространяете его или запускаете как сетевой сервис (например, размещая altweb-context для других), вы должны выпустить свой изменённый исходный код под AGPL.

  • Коммерческая: по соглашению. Чтобы использовать ALTWEB в продукте с закрытым исходным кодом или как размещённый сервис без публикации изменений, вам нужна отдельная коммерческая лицензия. См. COMMERCIAL.md.

Copyright © 2026 Daniel C. ȘOIMU. Встроенные сторонние компоненты сохраняют свои собственные (разрешительные) лицензии — см. NOTICE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to sign and verify actions with ML-DSA-65 digital signatures, providing tamper-proof receipts that can be verified offline without any secrets.
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables LLM agents to acquire token-budgeted, deterministic context packs from repositories, with hash-chained provenance for auditability.
    2
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI agents to read, search, and preview governed markdown memories with explicit state and sensitivity, plus quarantine-only write, while never mutating canonical memory or exposing undeclared content.
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI agents to operate through a local, signed boundary that blocks prompt injection and secret leakage, verifies outputs, preserves cross-session memory, and provides offline-verifiable receipts. It also exposes 900+ MCP tools for discoverable agent actions.
    7
    MIT