ghostling-libghostty-terminal — скилл для Claude Code: терминал
Скилл показывает, как собрать минимальный терминальный эмулятор на C-библиотеке libghostty-vt с окнами и отрисовкой через Raylib.
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a claude-codeЧто делает ghostling-libghostty-terminal
Скилл ведёт по коду из одного файла main.c: разбор VT-последовательностей, состояние терминала, работа с курсором, стилями, переносом текста и прокруткой. Отдельный блок — render state API, который отдаёт только изменившиеся ячейки, так что перерисовывать весь экран каждый кадр не нужно.
libghostty-vt не занимается окнами, отрисовкой, PTY, вкладками и сплитами. Всё это вы подключаете сами: в примере окна и рендер берёт на себя Raylib, а псевдотерминал вы поднимаете через openpty и fork. Клавиатуру и мышь библиотека кодирует в escape-последовательности сама, включая протокол клавиатуры Kitty.
Для сборки нужны CMake 3.19+, Ninja, компилятор C и Zig 0.15.x в PATH. Debug-сборка идёт медленно из-за проверок корректности внутри Ghostty, поэтому замеры стоит делать на Release — иначе цифры производительности ничего не скажут.
Какие задачи решает
- разобрать VT-последовательности в своём приложении
- встроить эмуляцию терминала в существующий проект на C
- отрисовать изменившиеся ячейки сетки без полной перерисовки
- поднять PTY и связать его с состоянием терминала
- закодировать нажатия клавиш и события мыши в escape-последовательности
Примеры запросов агенту
- Покажи, как инициализировать терминал через libghostty-vt и заливать в него байты из PTY
- Собери минимальный терминальный эмулятор на libghostty-vt и Raylib по примеру ghostling
- Как пройти по render state и нарисовать только изменившиеся ячейки?
Как установить ghostling-libghostty-terminal
1Через Skills CLI (Vercel)
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a claude-code2Вручную: положить файлы
~/.claude/skills/ghostling-libghostty-terminal/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/ghostling-libghostty-terminal/
1Через Skills CLI (Vercel)
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a codex2Вручную: положить файлы
.agents/skills/ghostling-libghostty-terminal/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a cursor2Вручную: положить файлы
.cursor/skills/ghostling-libghostty-terminal/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install reason-machines/trending-skills ghostling-libghostty-terminal2Вручную: положить файлы
.github/skills/ghostling-libghostty-terminal/SKILL.md1Через Skills CLI (Vercel)
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a gemini-cli2Командой платформы
gemini skills install https://github.com/reason-machines/trending-skills --path skills/ghostling-libghostty-terminalВручную: положить файлы
.devin/skills/ghostling-libghostty-terminal/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора42
Похожие
Рядом в теме «Языки программирования»
Все скиллы по теме «Языки программирования» →Вопросы о ghostling-libghostty-terminal
Как установить ghostling-libghostty-terminal в Claude?
Выполните npx skills add reason-machines/trending-skills --skill ghostling-libghostty-terminal -a claude-code. Файл скилла появится по пути ~/.claude/skills/ghostling-libghostty-terminal/SKILL.md.
Что делает ghostling-libghostty-terminal?
Разбирает по шагам сборку терминального эмулятора на libghostty-vt: инициализацию, запись данных, ввод с клавиатуры и мыши, изменение размера, прокрутку и отрисовку через render state.
Что нужно для работы скилла?
CMake 3.19+, Ninja, компилятор C и Zig 0.15.x в PATH. Окна и PTY библиотека не предоставляет — их подключаете отдельно.