Releases: VKambulov/research-mode
v0.5.0
English
v0.5.0 - 2026-06-22
- Added structured output artifact contracts with
working_memory.output_contract.outputs[],finalization.candidate_artifacts
matching by explicit id, anddelivery.outputsas the structured handoff.
primary_fileandattachmentsremain compatibility mirrors. - Added open provenance links with
source_forandderived_from. Validation
checks id reference integrity and contract/candidate agreement, but does not
infer source/editable lineage from file extension, MIME type, filename, prose,
content similarity, or list order. - Deprecated legacy single-output
--deliverable-kind,
working_memory.output_contract.kind,primary_deliverable_kind, and
deliverable_decisionfor new tasks. They remain readable for old states. - Structured output finalization no longer requires
finalization.primary_deliverable_kind, and consistency checks no longer use
stale legacy format hints to flag validdelivery.outputshandoffs. - Added a minimal read-only reliability diagnostics foundation: optional
state.reliabilitycounters, summary/health/operator-attention surfacing,
task-playbook visibility, and old-state compatibility tests. - Repeated identical completion-validation rejections now record reliability
events and surfacecompletion_validation_retry_loopas manual operator
attention after the second repeat; a successful completion validation clears
the active retry warning. - Comparative deliverable validation is now contract-driven: it runs only when
working_memory.output_contract.quality_checksasks for a
comparative_matrix, and it checks table shape rather than header language. - Finalization now rejects obvious primary-deliverable format mismatches, such
aspdf_reportpointing at Markdown, and delivery handoff mismatches surface
asdelivery_artifact_handoff_failedoperator attention. - Failed delivery notifications can now carry optional provider-neutral
diagnostics:error_codeand sanitizedprovider_target_shape, with
delivery_channel_addressing_failedsurfaced in summary/health. - Finalization now records an optional
deliverable_decisionwith selected,
desired, and feasible user-facing formats. Desired format comes from
working_memory.output_contract.kindor canonical
finalization.primary_deliverable_kind; free-text deliverables and chat/thread
context do not inferpdf_report. queue-statusnow returns read-only queue findings for missing holder tasks,
holder/task lock mismatches, stale waiters, and terminal tasks still present
in waiters; task-specific queue findings also appear inhealth.- Added a deterministic reliability soak test for the finalization format
decision path. Failed finalization findings now surface inhealth, so
operators can see structured rework reasons such as
output_contract_format_mismatchwithout reading raw state. - Removed the source
skill-card.mdafter confirming ClawHub treats Skill Cards
as generated registry artifacts and filters local copies during publish.
Русский
v0.5.0 - 2026-06-22
- Добавлен structured output artifacts contract:
working_memory.output_contract.outputs[], matching
finalization.candidate_artifactsпо явному id иdelivery.outputsкак
structured handoff.primary_fileиattachmentsостаются compatibility
mirrors. - Добавлены открытые provenance-связи
source_forиderived_from. Validation
проверяет integrity id-ссылок и согласованность contract/candidate, но не
выводит editable/source lineage из расширения, MIME, имени файла, prose,
похожести текста или порядка в списке. - Legacy single-output поля
--deliverable-kind,
working_memory.output_contract.kind,primary_deliverable_kindи
deliverable_decisionпомечены как deprecated для новых задач, но остаются
читаемыми для старых states. - Structured output finalization больше не требует
finalization.primary_deliverable_kind, а consistency checks больше не
используют устаревшие legacy format hints для warning-ов на валидных
delivery.outputshandoff. - Добавлена минимальная read-only основа reliability diagnostics: optional
counters вstate.reliability, вывод в summary/health/operator-attention,
видимость в task-playbook и проверки совместимости старых state. - Повторяющиеся одинаковые отказы completion validation теперь записываются как
reliability events и после второго повтора показывают
completion_validation_retry_loopкак ручное внимание оператора; успешная
completion validation очищает активное предупреждение. - Проверка сравнительных результатов теперь contract-driven: она запускается
только когдаworking_memory.output_contract.quality_checksпросит
comparative_matrix, и проверяет форму таблицы, а не язык заголовков. - Финальная проверка теперь отклоняет очевидное несоответствие формата, например
pdf_report, указывающий на Markdown, а проблемы передачи артефакта в
delivery выводятся какdelivery_artifact_handoff_failed. - Ошибки доставки теперь могут хранить optional provider-neutral diagnostics:
error_codeи безопаснуюprovider_target_shape; проблема формы цели
выводится в summary/health какdelivery_channel_addressing_failed. - Финальная проверка теперь записывает optional
deliverable_decisionс
выбранным, желаемым и фактически доступным пользовательским форматом. Желаемый
формат берётся изworking_memory.output_contract.kindили канонического
finalization.primary_deliverable_kind; свободный текст deliverable и
chat/thread context не выводятpdf_report. queue-statusтеперь возвращает read-only queue findings для missing holder
task, holder/task lock mismatch, stale waiters и terminal tasks, оставшихся в
waiters; task-specific queue findings также видны вhealth.- Добавлен deterministic reliability soak test для пути finalization format
decision. Failed finalization findings теперь видны вhealth, чтобы оператор
видел структурные rework reasons вродеoutput_contract_format_mismatchбез
ручного чтения raw state. - Удалён исходный
skill-card.md: ClawHub считает Skill Card генерируемым
registry-артефактом и фильтрует локальные копии при публикации.
v0.4.1
English
Research Mode v0.4.1 is a small packaging polish release for ClawHub presentation and verification.
Changes
- Added
skill-card.mdso ClawHub can display a concise human-facing skill card instead of relying on the longer agent-facingSKILL.md. - Added
skill-card.mdto the release package boundary and documentation smoke checks so future releases do not accidentally omit it.
Validation
- Local release gate passed: selftest
305/305, pytest305 passed. - Standalone release smoke passed.
- Bandit security smoke scan clean.
detect-secretsscan returned emptyresults.- GitHub Actions
Research Mode checkspassed on the release commit:27818072466.
Русский
Research Mode v0.4.1 — маленький релиз полировки пакета для отображения и проверки в ClawHub.
Изменения
- Добавлен
skill-card.md, чтобы ClawHub показывал короткую пользовательскую карточку скилла, а не опирался только на длинный агентскийSKILL.md. skill-card.mdдобавлен в границу релизного пакета и проверку документации, чтобы будущие релизы не пропускали этот файл.
Проверки
- Локальный release gate прошёл: selftest
305/305, pytest305 passed. - Отдельный release smoke прошёл.
- Bandit security smoke scan чистый.
detect-secretsвернул пустойresults.- GitHub Actions
Research Mode checksпрошёл на release commit:27818072466.
v0.4.0
English
Research Mode v0.4.0 adds a default preflight gate and makes long-running research easier to diagnose and recover before work starts drifting.
Highlights
- Added the default
preflightgate for new tasks. The first worker lease now recordsresult.preflight, writesworkspace/preflight/research-preflight.md, and either continues, continues with warnings, pauses for setup, or blocks on a critical missing condition. - Added
--skip-preflightas an explicit escape hatch for cheap tasks or preflight troubleshooting. Skipped preflight is recorded aspreflight.decision="skipped". - Added skill-local
RULES.mdsupport withRULES.example.mdas the public template. The package reads onlyRULES.mdin the skill directory and does not create or overwrite it. - Exposed preflight state in
summary,status,task-playbook.md, and the read-onlypreflightcommand. - Added
operator_attentiontosummary --format jsonso monitors can detect stale active runs and show clear recommended actions. - Updated README, troubleshooting, release, roadmap, and skill docs to make stability, observability, and recovery the current project priority.
Validation
- Local release gate passed: selftest
305/305, pytest305 passed. - Standalone release smoke passed.
- Bandit security smoke scan clean.
detect-secretsscan returned emptyresults.- GitHub Actions
Research Mode checkspassed on the release commit:27816284774.
Full bilingual release notes are in RELEASE_NOTES.md.
Русский
Research Mode v0.4.0 добавляет обязательный по умолчанию preflight gate и делает долгие исследования заметно проще диагностировать и восстанавливать до того, как задача уйдёт в неправильный цикл.
Главное
- Добавлен preflight gate по умолчанию для новых задач. Первая рабочая блокировка пишет
result.preflight, создаётworkspace/preflight/research-preflight.mdи либо продолжает задачу, либо продолжает с предупреждениями, либо ставит задачу на паузу/блокирует её при критичном отсутствующем условии. - Добавлен явный
--skip-preflightдля дешёвых задач или диагностики самого preflight. Пропуск фиксируется какpreflight.decision="skipped". - Добавлена поддержка
RULES.mdв корне скилла; публичный шаблон —RULES.example.md. Пакет только читает skill-localRULES.mdи не создаёт/не перезаписывает его. - Состояние preflight выводится в
summary,status,task-playbook.mdи read-only командеpreflight. - В
summary --format jsonдобавленoperator_attention, чтобы наблюдатели видели stale active run и понятное рекомендуемое действие. - Обновлены README, troubleshooting, release, roadmap и SKILL-документация: текущий приоритет проекта — стабильность, наблюдаемость и восстановимость исследований.
Проверки
- Локальный release gate прошёл: selftest
305/305, pytest305 passed. - Отдельный release smoke прошёл.
- Bandit security smoke scan чистый.
detect-secretsвернул пустойresults.- GitHub Actions
Research Mode checksпрошёл на release commit:27816284774.
Полные двуязычные заметки лежат в RELEASE_NOTES.md.
v0.3.0
Highlights
Research Mode v0.3.0 prepares the public support boundary and adds safer operator diagnostics/recovery flows.
- Added public ROADMAP and CONTRIBUTING docs plus GitHub issue templates.
- Added CLI, state-versioning, and JSON schema contract docs.
- Added read-only
healthdiagnostics andreconcilealias. - Added safer pending-result recovery diagnostics and task-local
recovery-log.jsonl. - Added
recover --refresh-derivedfor regenerating missing operator surfaces without mutating task state. - Hardened pending-result path handling by rejecting invalid
run_idvalues before resolving result files. - Documented the staged completion path:
should_complete=true->verifyadequacy ->finalize->awaiting_review->approve->complete.
Validation
- Local release gate passed:
288/288,288 passed. - Standalone release smoke passed.
- Bandit security smoke scan clean.
- detect-secrets scan returned
results: {}. - GitHub Actions
Research Mode checkspassed on the release commit.
Full bilingual release notes are in RELEASE_NOTES.md.
v0.2.3
Patch release for ClawHub packaging clarity.
- Documented ClawHub installation.
- Clarified that ClawHub skill installs are text-only and do not include binary assets such as the social preview PNG or example XLSX workbook.
- Clarified the distribution boundary between the Apache-2.0 GitHub source repository and the ClawHub platform skill package license.
- Made docs smoke compatible with text-only ClawHub installs.
v0.2.2
Patch release for the public GitHub presentation and examples showcase.
- Added public examples under
examples/, with sanitizedresearch-trace/directories for review. - Clarified multi-file deliverable finalization guidance.
- Added docs smoke coverage for examples and README links.
- Improved README presentation with badges, an at-a-glance overview, lifecycle diagram, showcase links, generated social preview, and a static Apache-2.0 license badge.
v0.2.1
English
v0.2.1
Patch release for delivery-state consistency.
record-notification --status sentnow clears stale
delivery.notification_blockedand intentblocked_reasonmarkers when an
operator or adapter successfully sends an intent that was previously blocked.- Added regression coverage for the
blocked -> senttransition.
Русский
v0.2.1
Patch-релиз для согласованности delivery-state.
record-notification --status sentтеперь очищает устаревшие маркеры
delivery.notification_blockedиblocked_reasonу intent, если оператор
или адаптер успешно отправил intent, который раньше был заблокирован.- Добавлен regression test для перехода
blocked -> sent.
v0.2.0
English
v0.2.0
research-mode v0.2.0 is a reliability release for long-running research
tasks, especially tasks that run under cron, recover from interrupted worker
turns, and produce review-ready file deliverables.
Highlights
- Added a research adequacy gate before finalization, so tasks verify whether
accumulated evidence actually answers the goal before producing a final
deliverable. - Added a root-local fair worker queue for cron iterations, including stale
holder/waiter cleanup and compatibility defaults for olderstate.json
files. - Added pending result recovery for worker turns that wrote a result file but
did not reachfinish. - Added review-ready package deliverables with explicit entrypoints,
attachments, manifest handling, and task-directory containment checks. - Added delivery intents as the public handoff contract for platform-specific
notification adapters. - Added
record-notificationso delivery counters are updated only after a
notification is confirmed as sent. - Added owner binding fields for chat-launched tasks, including optional
thread_id/topic_idand explicit--no-owner. - Added stricter XLSX compatibility validation, including detection of
worksheetautoFilterand Excel Table conflicts on the same range. - Hardened URL capture, approval/delivery file handling, task path handling,
and runtime prompts as part of the same reliability line. - Updated GitHub Actions to current action versions and removed ineffective
cache configuration without a lockfile.
Migration notes
- Existing task state is normalized lazily when read; older tasks should not
require manual migration. - Platform-specific notification sending is still intentionally outside the
public skill package. The public contract isdelivery_intentplus
record-notification. awaiting_reviewstill means "ready for human review", not "already
delivered".
Required release checks
Run from the repository or package root:
scripts/check_research_mode.sh
uvx --from bandit bandit -q -r scripts -x scripts/selftest
detect-secrets scan --all-files --exclude-files '(^|/)\.(pytest|ruff)_cache/'Русский
v0.2.0
research-mode v0.2.0 — релиз надёжности для длительных исследований,
особенно для задач, которые идут через cron, восстанавливаются после
прерванных рабочих итераций и готовят файлы для проверки человеком.
Главное
- Добавлена проверка достаточности исследования перед финализацией: задача
сначала проверяет, отвечает ли накопленная доказательная база цели. - Добавлена честная очередь рабочих итераций на уровне корня исследований,
включая очистку устаревших holder/waiter записей и совместимость со старыми
state.json. - Добавлено восстановление pending result для случаев, когда рабочая итерация
успела записать result-файл, но не дошла доfinish. - Добавлены review-ready package deliverables: явный entrypoint, attachments,
manifest и проверки, что файлы не выходят за пределы директории задачи. - Добавлен
delivery_intentкак публичный контракт передачи уведомлений в
platform-specific адаптеры. - Добавлена команда
record-notification: счётчики доставки обновляются
только после подтверждённой отправки уведомления. - Добавлена привязка owner для задач, запущенных из чата, включая опциональные
thread_id/topic_idи явный--no-owner. - Добавлена более строгая XLSX-проверка совместимости, включая конфликт
worksheetautoFilterи Excel Table на одном диапазоне. - Усилены URL capture, обработка approval/delivery файлов, проверка путей задач
и runtime prompts в рамках той же линии надёжности. - GitHub Actions обновлены на актуальные версии actions; удалён неэффективный
cache без lockfile.
Заметки по миграции
- Старое состояние задач нормализуется лениво при чтении; ручная миграция
старых задач не должна требоваться. - Отправка уведомлений через конкретную платформу по-прежнему намеренно
находится вне публичного пакета skill. Публичный контракт —delivery_intent
плюсrecord-notification. awaiting_reviewпо-прежнему означает "готово к проверке человеком", а не
"уже доставлено".
Обязательные проверки релиза
Из корня репозитория:
scripts/check_research_mode.sh
uvx --from bandit bandit -q -r scripts -x scripts/selftest
detect-secrets scan --all-files --exclude-files '(^|/)\.(pytest|ruff)_cache/'v0.1.0
Research Mode v0.1.0
English
First public release of research-mode, an OpenClaw skill for durable background research through OpenClaw cron.
research-mode is designed for research tasks that should not live inside one long chat turn. It stores task state on disk, runs bounded worker iterations, keeps intermediate artifacts inspectable, and separates result preparation from final delivery through an explicit review step.
Highlights
- Durable background research driven by OpenClaw cron.
- Local task state with
state.json, run logs, artifacts, and task playbooks. - Lease-aware
begin/finishlifecycle for bounded worker turns. - Control commands for
pause,resume,stop,reopen,request-changes, andapprove. - Review-gated finalization:
awaiting_reviewis separate from actual delivery. - Structured finalization contract through
result.finalization. - Lightweight inspection for Markdown and XLSX candidate deliverables.
- Operator surfaces:
summary,status,task-playbook.md, andruns.tsv. operator_next_actionexplains the next expected step for review, rework, intervention, or continuation.- Bilingual README, architecture reference, troubleshooting guide, release procedure, security notes, and agent maintenance notes.
- GitHub Actions CI runs the full release gate and Bandit security smoke scan.
Installation
Clone the repository into the skills directory of an OpenClaw installation:
git clone https://github.com/VKambulov/research-mode.git "$OPENCLAW_SKILLS_DIR/research-mode"
openclaw skills checkRelease Verification
The release was checked with:
clean clone check passed
docs smoke passed
ruff passed
release smoke passed
pyright 0 errors
selftest 243/243
pytest 243 passed
bandit findings: none
GitHub Actions CI passed
Known Limitations
- The skill depends on OpenClaw cron and is not a standalone Python daemon, hosted service, or general-purpose research library.
- Task-local Python packages are supported, but there is no lockfile or package allowlist policy yet.
- Artifact inspection is lightweight and structural; it is not a full domain-specific quality audit.
License
Apache License, Version 2.0.
Русский
Первый публичный релиз research-mode — OpenClaw skill для длительных фоновых исследований через OpenClaw cron.
research-mode предназначен для исследовательских задач, которые не должны жить внутри одного длинного сообщения в чате. Он хранит состояние задачи на диске, запускает ограниченные рабочие итерации, сохраняет проверяемые артефакты и отделяет подготовку результата от фактической выдачи через явный этап ревью.
Главное
- Длительные фоновые исследования через OpenClaw cron.
- Локальное состояние задачи:
state.json, журналы запусков, артефакты иtask-playbook.md. - Жизненный цикл
begin/finishс рабочей блокировкой. - Команды управления:
pause,resume,stop,reopen,request-changes,approve. - Проверка результата перед выдачей:
awaiting_reviewотделён от фактической доставки. - Структурированный контракт финальной проверки через
result.finalization. - Лёгкая проверка кандидатных артефактов Markdown и XLSX.
- Поверхности оператора:
summary,status,task-playbook.md,runs.tsv. operator_next_actionпоказывает следующий шаг: ревью, доработка, вмешательство оператора или продолжение исследования.- README, архитектура, troubleshooting, процедура релиза, security notes и agent maintenance notes доступны на русском и английском.
- GitHub Actions CI запускает полный release gate и Bandit security smoke scan.
Установка
Клонировать репозиторий в директорию skills конкретной OpenClaw-инсталляции:
git clone https://github.com/VKambulov/research-mode.git "$OPENCLAW_SKILLS_DIR/research-mode"
openclaw skills checkПроверки релиза
Перед публикацией были выполнены:
clean clone check passed
docs smoke passed
ruff passed
release smoke passed
pyright 0 errors
selftest 243/243
pytest 243 passed
bandit findings: none
GitHub Actions CI passed
Известные ограничения
- Skill завязан на OpenClaw cron и не является самостоятельным Python-демоном, размещённым сервисом или универсальной библиотекой для исследований.
- Пакеты Python, локальные для задачи, поддерживаются, но lockfile или allowlist policy пока нет.
- Проверка артефактов структурная и лёгкая; это не полноценный доменный аудит качества.
Лицензия
Apache License, Version 2.0.
Full Changelog: https://github.com/VKambulov/research-mode/commits/v0.1.0