kovasite takes a Markdown file from draft to live: author it as a Kovanex knowledge-base note, run the offline site generator, and deploy. The build reads committed files, so it never depends on a live server — the KB is the editing surface, the site is a static export.
---
section: blog # or: press
slug: my-post
description: one-liner for <meta> + the index
date: 2026-06-28
lang: en
---
# Headline
Body in Markdown…
section: blog publishes under /blog;
section: press under /press.
export KOVANEX_ADDR=127.0.0.1:9090
export SITE_REPO=/path/to/site-repo # has tools/site + projects/<project>/
export DEPLOY_CMD='tar czf - -C projects/myproj/site/dist . | ssh host "tar xzf - -C /var/www/site"'
bash publish.sh <project> <slug> "<Title>" article.md
It upserts the KB note site_<project>_<slug>, registers it in
site.json, runs tools/site fetch + build, and
deploys. Re-running the same slug updates the post — the note id is stable.
Unpack into your agent's skills folder:
tar xzf kovasite.tar.gz -C ~/.claude/skills/ — needs kovanex-ctl, go, python3 on PATH.
Source →
skills/kovasite/ in the public mirror (SKILL.md · publish.sh · README.md)