Getting Started
-
Clone this repository and enter the clone directory.
-
No project language or platform is prescribed. To use the optional bundled task CLI tools, install Python 3.9+ and use Bash or Zsh. The Markdown tracker and agent skills can also be used without those tools.
-
In your coding assistant, request "Run initial setup for this repository" or invoke
/initial-setup. The shared skill asks for your project details and creates your configuration without assuming software or an application stack. A novel, research project, or event plan is equally valid. -
If using the CLI tools, validate the tooling and inspect the sample task:
python3 -m unittest discover -s scripts/tests -v ./scripts/get-task EX-001 ./scripts/get-tasks --allAfter choosing a different prefix, use your new ID or simply
./scripts/get-task 1. -
Optionally load task commands and aliases into your shell:
source ./scripts/env.sh
Example Project
A generic project starter with task tracking and reusable agent workflows. It includes one sample task, not an application or deployment stack. The project's subject, language, platform, and way of verifying work are unspecified.
Configuration
project-config.json is the shared configuration for
the project name, description, and optional named commands. The triage and
research helpers read it when building agent prompts. Commands are guidance,
not automatically executed by those helpers. The sample's commands is empty.
Add commands only if relevant, for example a manuscript word-count command or
a software test command. Human review needs no command.
docs/tasks.md owns task configuration:
task-id-prefix:EXin this example.projects: labels, keys, and repository-relative paths. The sample key isexample-project.task-statuses,task-types, and optionalepics/subprojects.
For manual setup, edit the JSON configuration and task frontmatter, then run
./scripts/update-tasks. It regenerates tables and migrates task IDs and
internal links when the prefix changes. Preserve numeric IDs and existing
tasks. If changing project keys, also update their task anchor data-project
attributes before synchronizing.
TASK_ID_PREFIX overrides frontmatter; without either, scripts default to
EX. TASKS_FILE or -f /path/to/tasks.md selects another tracker.
Keep machine-specific overrides in ignored scripts/env.sh.local or .env,
which are sourced by the optional environment helper. These must contain
trusted shell syntax, not arbitrary dotenv syntax.
Task Commands
./scripts/add-task "Outline the first deliverable" --project example-project --type task --status triage
./scripts/get-task 1 --json
./scripts/update-task 1 --status ready
./scripts/work-on-task 1 --start
./scripts/update-task 1 --status testing --check-all
./scripts/update-tasks
Working agents move completed work to testing; humans verify it before
moving it to done. testing means review/verification, not necessarily
automated software testing.
triage and research optionally launch Hermes or Antigravity. Those external
CLIs are not required for the core task commands or tests. See the
script guide for options.
Shared Agent Skills
- initial-setup: interview the user and configure a fresh clone.
- task-management: query, add, update, and synchronize tasks.
- execute-tasks: implement specified tasks sequentially and record checks.
These live in .agents/skills/. The repository-wide agent guide keeps workflows independent of any particular stack.