Skip to content
flancer32Public

About

Minimalistic file-based CMS for multilingual websites with AI-powered localization and Git-native content workflow.

Topics

Resources

Stars

2 stars

Watchers

2 watching

Forks

Repository files navigation

@flancer32/teq-cms

npms.io

Human-governed. Agent-built. Agent-ready.

@flancer32/teq-cms is a CMS built around agents and Markdown. Agents read, create, maintain, and translate version-controlled Markdown content directly. Human-facing web pages are derived HTML projections of that content. The CMS also publishes locale-neutral raw Markdown for agents. It is built on the Tequila Framework (TeqFW) and ships with a version-matched Agent Skill.

Why use it

TeqCMS keeps Markdown sources, explicit locale variants, and presentation templates in the project filesystem and Git. It needs no database or admin panel, so content remains transparent, reviewable, and reproducible.

It is a good fit for multilingual websites, landing pages, documentation, and developer-facing resources.

Quick start

git clone https://github.com/flancer32/teq-cms.git
cd teq-cms
npm install
npm start

The package uses the standard @teqfw/cli host. The web server is available as web:start; cms:generate writes discovery files to the host's web/ directory.

Configure the CMS with the TEQ_CMS__* namespace. Template-engine settings belong to @flancer32/teq-tmpl, and web-server settings belong to @teqfw/web. Agents maintain localized source files directly; the CMS does not call an LLM API.

Learn more at cms.teqfw.com.

Markdown publications

Everything under tmpl/web/ is public. Markdown publication spans the site by default, without route-family registration. Agents maintain unlocalized and locale-specific sources directly in Git:

/about          → negotiated HTML (human language) or neutral Markdown
/about.md       → guaranteed neutral Markdown
/en/about.md    → exact English Markdown
/en/about       → headers select English HTML or Markdown
/en/about.html  → English HTML alias
/about.html     → HTML using the preferred human language
/               → headers select index.md as HTML or Markdown
/index.md       → guaranteed neutral home Markdown
/en/            → headers select English home HTML or Markdown

Explicit .md or .html selects the format ahead of Accept and User-Agent; it does not override Accept-Language. Extensionless publication URLs use explicit Accept preference first, then User-Agent hints: agents receive Markdown, people receive HTML, and ambiguous clients default to HTML. Responses vary by Accept, User-Agent, plus Accept-Language for neutral addresses. HTML language uses URL locale, then supported Accept-Language, then TEQFW_TMPL__DEFAULT_LOCALE; this also applies to .html. An authored unlocalized source retains priority for neutral HTML in site mode. Neutral Markdown keeps its stable source preference.

Markdown sources take priority over ordinary templates, then static files in web/, then 404. A found invalid source or unavailable requested representation returns 404. Static prefixes such as /assets/ bypass templating and use only web/assets/; missing files return 404.

The host defines static prefixes and presentation selection in code by substituting Fl32_Cms_Back_Publication_Policy$ through DI. The default presentation is publication.html. Localized content is exact; presentation templates may use normal tmpl fallback. Markdown includes front matter. HTML canonical and locale links stay extensionless. Markdown alternate links and llms.txt use explicit .md addresses; the sitemap defaults to available canonical HTML. Set TEQ_CMS__SITEMAP_REPRESENTATIONS=markdown or both to include every distinct eligible Markdown language variant without alias duplicates. indexable: false excludes a source from generated discovery while keeping it public.

A nonempty legacy PUBLICATION_FAMILIES list retains the previous selected-section mode. Run teq cms:generate to generate discovery files. See the publication guide for host policy, main-page behavior, source validation, migration, and the optional private agent inbox.

Agent-Driven Development

TeqFW is built through the same development model that it is designed to enable: one human defines the intent, architecture, constraints, and acceptance criteria; coding agents implement and maintain the products; other agents use those products in different combinations to create applications.

@flancer32/teq-cms is built on TeqFW and uses its packages as agent-readable application components. The package includes a version-matched Agent Skill in skills/teqfw-cms. The README provides a human-facing product overview; the skill provides agents with the package concepts, contracts, integration rules, examples, and boundaries.

Mount the skill into a host project:

mkdir -p .agents/skills
ln -s ../../node_modules/@flancer32/teq-cms/skills/teqfw-cms \
  .agents/skills/teqfw-cms

Each TeqFW package is both a practical software component and a working demonstration of human-governed, agent-driven development. This work follows the Agent-Driven Software Management (ADSM) approach: human intent, architectural authority, acceptance, and responsibility remain authoritative; agents act as implementation and reasoning partners.

License

Apache-2.0 © Alex Gusev — https://github.com/flancer64

See custom 404 pages for localized host templates, error representations, cache policy, and terminal-handler ordering.

About

Minimalistic file-based CMS for multilingual websites with AI-powered localization and Git-native content workflow.

Topics

Resources

Stars

2 stars

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages