Создание Agent Adapter для Paperclip
Используй этот skill, когда нужно создать adapter package или изменить контракт adapter system в Paperclip. Задача skill - держать правильную структуру пакета, обязательные интерфейсы и registry points; подробности читать в references/ по необходимости.
When
- Новый adapter package для local CLI, API-based агента или custom process.
- Поддержка нового agent runtime в server, UI и CLI слоях.
- Изменение session handling, parse layer или environment test contract.
- Новые поля config, transcript parsing или runtime behavior существующего adapter.
Не используй для обычной backend/UI разработки вне adapter system.
Contract
Adapter - самодостаточный пакет:
packages/adapters/<name>/
src/
index.ts
server/
ui/
cli/
package.json
tsconfig.json
Обязательные consumers:
- server:
execute, testEnvironment, sessionCodec, parse helpers.
- UI:
parseStdoutLine, ConfigFields, buildAdapterConfig.
- CLI:
formatStdoutEvent.
Registry points:
server/src/adapters/registry.ts
ui/src/adapters/registry.ts
cli/src/adapters/registry.ts
Workflow
- Определи runtime: local CLI, remote API, custom process или hybrid.
- Выбери names: type ->
snake_case, package -> @paperclipai/adapter-<kebab-name>, dir -> packages/adapters/<kebab-name>/.
- Создай exports:
., ./server, ./ui, ./cli.
- Root
index.ts: type, label, models, agentConfigurationDoc.
- Server: config parsing через
@paperclipai/adapter-utils/server-utils, execution, output parsing, session persistence/retry, testEnvironment.
- UI: transcript parser, config builder, adapter-specific fields.
- CLI: formatter для
paperclipai run --watch.
- Зарегистрируй adapter во всех registry.
- Добавь тесты на parsing, session codec и config building.
- Проверь, что adapter не загрязняет cwd и безопасно обращается с секретами.
Rules
- Root
index.ts dependency-free: без Node APIs и React.
agentConfigurationDoc описывает routing logic: когда использовать adapter и когда не использовать.
- Config и stdout агента недоверенные: безопасный parsing, без dynamic execution.
- Сессионность проектируй сразу; stale session retry должен быть явным.
- Не копируй Paperclip skills в рабочую директорию пользователя; используй tmpdir/global config/изоляцию.
- Секреты передавай через environment, не через prompt template.
- Sandboxing, approvals и network controls документируй и ограничивай явно, если runtime их поддерживает.
References
references/architecture-and-contract.md -> структура пакета, интерфейсы, registration contract.
references/session-runtime-patterns.md -> session management, server-utils, skills injection, prompt/config patterns.
references/security-and-testing.md -> security rules, transcript kinds, testing checklist.
Формат ответа
Верни: выбранный runtime, файлы/модули, server/UI/CLI contracts, риски session/secrets/cwd/parsing и минимальные тесты/проверки.
1---2name: create-agent-adapter3description: Создавать или менять Paperclip agent adapter: пакет адаптера, интерфейсы, модули, регистрацию и поддержку CLI/API/custom AI coding tools.4---56# Создание Agent Adapter для Paperclip78Используй этот skill, когда нужно создать adapter package или изменить контракт adapter system в Paperclip. Задача skill - держать правильную структуру пакета, обязательные интерфейсы и registry points; подробности читать в `references/` по необходимости.910## When1112- Новый adapter package для local CLI, API-based агента или custom process.13- Поддержка нового agent runtime в server, UI и CLI слоях.14- Изменение session handling, parse layer или environment test contract.15- Новые поля config, transcript parsing или runtime behavior существующего adapter.1617Не используй для обычной backend/UI разработки вне adapter system.1819## Contract2021Adapter - самодостаточный пакет:2223```text24packages/adapters/<name>/25 src/26 index.ts27 server/28 ui/29 cli/30 package.json31 tsconfig.json32```3334Обязательные consumers:3536- server: `execute`, `testEnvironment`, `sessionCodec`, parse helpers.37- UI: `parseStdoutLine`, `ConfigFields`, `buildAdapterConfig`.38- CLI: `formatStdoutEvent`.3940Registry points:4142- `server/src/adapters/registry.ts`43- `ui/src/adapters/registry.ts`44- `cli/src/adapters/registry.ts`4546## Workflow47481. Определи runtime: local CLI, remote API, custom process или hybrid.492. Выбери names: type -> `snake_case`, package -> `@paperclipai/adapter-<kebab-name>`, dir -> `packages/adapters/<kebab-name>/`.503. Создай exports: `.`, `./server`, `./ui`, `./cli`.514. Root `index.ts`: `type`, `label`, `models`, `agentConfigurationDoc`.525. Server: config parsing через `@paperclipai/adapter-utils/server-utils`, execution, output parsing, session persistence/retry, `testEnvironment`.536. UI: transcript parser, config builder, adapter-specific fields.547. CLI: formatter для `paperclipai run --watch`.558. Зарегистрируй adapter во всех registry.569. Добавь тесты на parsing, session codec и config building.5710. Проверь, что adapter не загрязняет cwd и безопасно обращается с секретами.5859## Rules6061- Root `index.ts` dependency-free: без Node APIs и React.62- `agentConfigurationDoc` описывает routing logic: когда использовать adapter и когда не использовать.63- Config и stdout агента недоверенные: безопасный parsing, без dynamic execution.64- Сессионность проектируй сразу; stale session retry должен быть явным.65- Не копируй Paperclip skills в рабочую директорию пользователя; используй tmpdir/global config/изоляцию.66- Секреты передавай через environment, не через prompt template.67- Sandboxing, approvals и network controls документируй и ограничивай явно, если runtime их поддерживает.6869## References7071- `references/architecture-and-contract.md` -> структура пакета, интерфейсы, registration contract.72- `references/session-runtime-patterns.md` -> session management, server-utils, skills injection, prompt/config patterns.73- `references/security-and-testing.md` -> security rules, transcript kinds, testing checklist.7475## Формат ответа7677Верни: выбранный runtime, файлы/модули, server/UI/CLI contracts, риски session/secrets/cwd/parsing и минимальные тесты/проверки.