Files
git.taskfile.build/AGENTS.md
T
Janik von Rotz 323f81a45f refactor: migrate documentation from 11ty to Zensical and restructure project layout
- Replace 11ty static site generator with Zensical (Material for MkDocs)
- Remove Node.js dependencies, `package.json`, `pnpm-lock.yaml`, and `node_modules`
- Refactor directory structure: move docs to `docs/`, assets to `docs/{img, stylesheets, javascripts}`, and build output to `site/`
- Create modular bin scripts for Zensical, 11ty, and Vuepress workflows (init, dev, build, serve)
- Update `.gitignore` to track `.venv` and `site` instead of `node_modules` and `_site`
- Rewrite `README.md` and `AGENTS.md` to reflect new tooling and structure
- Update `task` and `task.template` with new documentation commands and help rows
- Implement `install` and `uninstall` scripts to fetch scripts from remote repository
- Add `zensical.toml` configuration with Material theme, dark mode toggle, and navigation
- Fix shellcheck issues in `task.template` and `save-pass-to-keepass`
- Update `prompt.md` with completion status and worklog
2026-10-05 16:53:23 +02:00

4.7 KiB

AGENTS.md

General agent guidance

This section outlines the universal rules and expectations for any LLM agent working within this repository.

Safety and Quality First: The highest priority is to produce secure, well-documented, and high-quality code. Do not introduce vulnerabilities, hardcoded secrets, or unreadable code.

Propose a Plan: For any new task, first provide a brief plan of action. This plan should clearly outline the intended changes and the rationale behind them.

Maintain Context: Before making any changes, an agent must read and understand the relevant files, including the project's main documentation and existing code structure.

Be Sparse: Only introduce new code if needed. Comment only what is worth commenting. When testing focus on the business use case.

Project structure

The project follows the 11ty static site generator structure:

taskfile.build/
├── docs/                   # Documentation source files
│   ├── img/                # Image assets
│   ├── javascripts/        # JavaScript files
│   └── stylesheets/        # CSS stylesheets
│       └── style.css       # Main stylesheet
├── site/                   # Generated site (build output)
├── zensical.toml           # Zensical configuration
├── README.md               # Main documentation
├── AGENTS.md              # Agent guidance (this file)
├── examples.md            # Examples documentation
├── library.md             # Library documentation
├── patterns.md            # Patterns documentation
├── usage.md               # Usage documentation
├── package.json           # Node.js dependencies
└── task                   # Main task script

The site generates documentation pages from markdown files using Zensical, with a responsive layout that includes navigation and content areas.

Environment & tooling

Taskfile

This project uses the https://taskfile.build/ standard.

The ./task file is a bash script that provides all functions necessary to work with this project.

Always try to run a command with the ./task file script.

Session Info (pi harness)

Inside the pi harness, the model ID is in $PI_MODEL (e.g. moonshotai/Kimi-K2.6), and the session log is at $PI_SESSION_FILE. That JSONL file contains token usage in the message.usage fields (input and output). When completing a prompt file, extract the model and cumulative token counts from these sources.

Jupyter Notebooks

Run with timeout: Run the notebook with timeout 10 task run-jupyter-notebook <path> [env].

Edit with MCP: Launch Jupyter Lab and use the builtin MCP server to edit the notebooks.

Coding conventions

Bash

The following guideline is heavily based on the Bash Style Guide | ysap.sh, which should be considered the primary reference for style. Adhere to the following principles to ensure scripts are safe, predictable, and maintainable.

Shebang: Start scripts with #!/usr/bin/env bash for portability.

Quoting: This is critical.

  • Use double quotes " for strings that require variable expansion.
  • Use single quotes ' for all other strings.

Always quote variable expansions "$var" to prevent word-splitting and globbing issues.

Variables: