npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

open-quill

v0.1.7

Published

OpenCode writing plugin: agents, commands, and writing tools

Readme

Open Quill

Open Quill is an OpenCode plugin that turns your coding assistant into a full-featured writing partner. It installs writing-focused agents, slash commands, and custom tools designed for fiction and non-fiction workflows.

All project files created by Open Quill workflows should live under a workspace-root openquill/ folder. If the folder does not exist yet, create it first, then place project docs there (for example openquill/plot.md, openquill/style_profile.md, openquill/project_brief.md, openquill/summary.md, and canon files such as openquill/characters.md).

Features

Specialized agents — each with a distinct role:

| Agent | Role | | -------------- | ---------------------------------------------------------------------------------------- | | writer | Primary agent: drafting, brainstorming, scene work. Delegates to other agents as needed. | | editor | Conservative reviser: minimal surgical edits with before/after reasoning. | | cowriter | Drafts scenes and chapters from an approved plan. | | critic | Delivers honest, objective critique — no sugarcoating. | | plotter | Structural analyst: beat sheets, arc planning, alternatives with tradeoffs. | | summarizer | Extracts plot summaries, chapter breakdowns, character status, open threads. | | lorekeeper | Maintains canon files (characters, locations, timeline, glossary, world rules). | | stylematcher | Analyzes prose style and produces quantified style profiles to preserve voice. | | style_checker | Professional proofreader: audits prose against style_profile.md and forbidden patterns; scores quality 1–5 across 5 dimensions and rejects below 20/25. |

Slash commands for common workflows:

| Command | What it does | | -------------------- | ----------------------------------------------------------------------------------- | | /story-prime | Primes a project: summarizes story state, extracts canon, creates all project docs. | | /cowrite-scene | Drafts a scene from an approved outline. | | /critique-chapter | Full critique: issues by severity, continuity risks, rewrite suggestions. | | /edit-selection | Conservative edit of selected text with before/after comparison. | | /plan-next | Proposes 3-5 options for the next chapter/scene with beat lists. | | /continuity-check | Checks chapter text against canon for contradictions. | | /refresh-canon | Updates canon files from the latest manuscript. | | /summarize-project | Creates a concise manuscript summary with chapter bullets and open threads. | | /writing-lang | Sets the per-project default output language (e.g., /writing-lang ru). | | /check_style | Audits prose against the project style profile and forbidden patterns; returns a 1–5 scoreboard. |

Tools available to agents:

  • build_style_profile — deterministic text analysis (sentence length, dialogue ratio, vocabulary richness, POV, tense detection). Works with both English and Russian text.
  • extract_canon — extracts structured facts from prose.
  • canon_merge / canon_snapshot — maintains and renders the canon database.
  • scan_manuscripts / read_manuscript_chunk — navigates large manuscripts in chunks.
  • prose_diff — summarizes editing changes.
  • continuity_check — verifies consistency against canon.
  • set_project_language — persists language preference per project.

Install

Runtime: Bun, via opencode. Open Quill uses Bun.file and Bun.env at runtime, so it runs only inside the opencode host (which is Bun-based) — it is not intended to be imported from a plain Node.js process.

opencode plugin open-quill -g

This installs the package and automatically adds it to your global opencode.json. On next startup, Open Quill installs agents into ~/.config/opencode/agents/ and commands into ~/.config/opencode/commands/ (Windows: %USERPROFILE%\.config\opencode).

For project-local installation, configure the plugin locally and set scope: "project". On next startup, Open Quill installs agents into <project>/.opencode/agents/, commands into <project>/.opencode/commands/, and Open Quill state into <project>/.opencode/.open-quill/.

Options

| Option | Values | Default | Description | | ----------------- | --------------------------------------- | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | | installMode | "owned-only" "if-missing" "force" | "owned-only" | How to handle existing files. owned-only updates only files managed by Open Quill; if-missing never overwrites; force overwrites everything. | | backup | "on-force" "always" "never" | "on-force" | When to create .bak backups before overwriting. | | defaultLanguage | any language code | — | Default output language for all projects (overridable per-project with /writing-lang). | | scope | "auto" "global" "project" | "auto" | Where Open Quill installs agents/commands and stores its state. auto currently falls back to global scope unless project is explicitly requested. |

Usage

  1. Switch to the writer or editor agent in OpenCode.
  2. Start a conversation — describe your project, ask for a scene draft, request a critique.
  3. Use slash commands for structured workflows: /story-prime to bootstrap a project, /critique-chapter for review, /plan-next for brainstorming.
  4. Set your preferred language: /writing-lang ru for Russian, /writing-lang en for English.

Language Support

All agents understand and work with both English and Russian text. The build_style_profile tool handles Cyrillic tokenization, Russian dialogue conventions (dash-prefixed lines: — Привет!), and Russian stopword filtering. Set a project-level default language to keep all agent responses in your preferred language.

License

MIT


Open Quill (Русская версия)

Open Quill — плагин для OpenCode, который превращает среду разработки в полноценного помощника для авторов. Он устанавливает специализированных агентов, слеш-команды и инструменты, предназначенные для работы над художественной и нехудожественной литературой.

Все проектные файлы, которые создают сценарии Open Quill, должны жить в папке openquill/ в корне рабочего проекта. Если папки ещё нет, её нужно сначала создать, а затем сохранять туда документы проекта (например openquill/plot.md, openquill/style_profile.md, openquill/project_brief.md, openquill/summary.md и файлы канона вроде openquill/characters.md).

Возможности

Специализированные агенты — каждый со своей ролью:

| Агент | Роль | | -------------- | ---------------------------------------------------------------------------------------------------------- | | writer | Основной агент: черновики, мозговой штурм, работа над сценами. Делегирует другим агентам по необходимости. | | editor | Консервативный редактор: минимальные точечные правки с обоснованием. | | cowriter | Пишет сцены и главы по утверждённому плану. | | critic | Прямая, объективная критика — без приукрашивания. | | plotter | Структурный аналитик: побитовые планы, арки, варианты с компромиссами. | | summarizer | Краткое содержание глав, статус персонажей, нерешённые сюжетные линии. | | lorekeeper | Ведёт файлы канона (персонажи, локации, хронология, глоссарий, правила мира). | | stylematcher | Анализирует стиль прозы и создаёт количественный профиль стиля для сохранения авторского голоса. | | style_checker | Профессиональный корректор: проверяет прозу на соответствие style_profile.md и запрещённым шаблонам; ставит оценку 1–5 по пяти параметрам, отбраковывает результат ниже 20/25. |

Слеш-команды для типовых сценариев работы:

| Команда | Описание | | -------------------- | ---------------------------------------------------------------------------------- | | /story-prime | Инициализация проекта: сводка сюжета, извлечение канона, создание всех документов. | | /cowrite-scene | Черновик сцены по утверждённому плану. | | /critique-chapter | Полная критика главы: проблемы по серьёзности, риски непрерывности, предложения. | | /edit-selection | Консервативная правка выделенного текста с до/после. | | /plan-next | 3-5 вариантов следующей главы/сцены с побитовыми планами. | | /continuity-check | Проверка текста главы на противоречия с каноном. | | /refresh-canon | Обновление файлов канона по последней версии рукописи. | | /summarize-project | Краткая сводка рукописи с пулями по главам и открытыми вопросами. | | /writing-lang | Установка языка вывода для проекта (например, /writing-lang ru). | | /check_style | Проверка прозы по профилю стиля и списку запрещённых шаблонов; возвращает оценку 1–5 по пяти параметрам. |

Инструменты, доступные агентам:

  • build_style_profile — детерминистический анализ текста (длина предложений, доля диалогов, богатство лексики, определение POV и времени). Работает с английским и русским текстом.
  • extract_canon — извлечение структурированных фактов из прозы.
  • canon_merge / canon_snapshot — ведение и рендеринг базы канона.
  • scan_manuscripts / read_manuscript_chunk — навигация по большим рукописям по частям.
  • prose_diff — сводка редакторских изменений.
  • continuity_check — проверка согласованности с каноном.
  • set_project_language — сохранение языковых предпочтений для проекта.

Установка

Среда выполнения: Bun, через opencode. Open Quill использует Bun.file и Bun.env во время выполнения, поэтому работает только внутри хоста opencode (основанного на Bun) — импортировать его из обычного Node.js-процесса не предполагается.

opencode plugin open-quill -g

Команда устанавливает пакет и автоматически добавляет его в глобальный opencode.json. При следующем запуске Open Quill установит агентов в ~/.config/opencode/agents/ и команды в ~/.config/opencode/commands/ (Windows: %USERPROFILE%\.config\opencode).

Для проектной установки настройте плагин локально и укажите scope: "project". При следующем запуске Open Quill установит агентов в <project>/.opencode/agents/, команды в <project>/.opencode/commands/, а своё состояние — в <project>/.opencode/.open-quill/.

Параметры

| Параметр | Значения | По умолчанию | Описание | | ----------------- | --------------------------------------- | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- | | installMode | "owned-only" "if-missing" "force" | "owned-only" | Управление существующими файлами. owned-only обновляет только файлы Open Quill; if-missing никогда не перезаписывает; force перезаписывает всё. | | backup | "on-force" "always" "never" | "on-force" | Когда создавать .bak-копии перед перезаписью. | | defaultLanguage | любой код языка | — | Язык вывода по умолчанию (переопределяется для конкретного проекта через /writing-lang). | | scope | "auto" "global" "project" | "auto" | Куда Open Quill устанавливает агентов/команды и где хранит своё состояние. auto сейчас по умолчанию использует глобальную область, если явно не указан project. |

Использование

  1. Переключитесь на агента writer или editor в OpenCode.
  2. Начните разговор — опишите проект, попросите черновик сцены, запросите критику.
  3. Используйте слеш-команды: /story-prime для инициализации проекта, /critique-chapter для рецензии, /plan-next для планирования.
  4. Задайте предпочтительный язык: /writing-lang ru.

Поддержка языков

Все агенты понимают и работают как с английским, так и с русским текстом. Инструмент build_style_profile корректно обрабатывает кириллическую токенизацию, русские диалоговые конвенции (строки с тире: — Привет!) и русские стоп-слова. Установите язык по умолчанию для проекта, чтобы все ответы агентов были на нужном языке.

Лицензия

MIT