# agent_checklist

This is a CLI tool designed for code agents like Cursor. It leverages Bun as its runtime, package manager, and build tool. The tool uses Bun's built-in SQLite integration to store and manage data.

## Installation

To install dependencies:

```bash
bun install
```

To build the executable:
```bash
bun run bundle
```

## Usage

After building, you can run the CLI tool using its name directly if it's in your PATH (e.g., after `bun link` or global installation), or by specifying the path to the executable in the `dist` folder.

To run the CLI tool locally after building:

```bash
./dist/index.js <command> [options]
```

Or, if you've run `bun link` or installed it globally:

```bash
agent-checklist <command> [options]
```

## How it works

The CLI tool allows you to manage multiple checklists. Each checklist has a unique name and ID, and can contain multiple tasks. Tasks also have IDs and can be marked as completed.

### Available Commands:

*   `agent-checklist create <name> [-a|--add <tasks...>]`
    *   Creates a new checklist with the given `<name>`.
    *   Optionally, you can add initial tasks using the `-a` or `--add` flag, followed by a list of task descriptions.
    *   Example: `agent-checklist create "My Project" -a "Setup environment" "Initialize repository"`
*   `agent-checklist list [checklistId]`
    *   If `checklistId` is provided, lists all tasks for that specific checklist.
    *   If no `checklistId` is provided, lists all available checklists.
    *   Example (list all checklists): `agent-checklist list`
    *   Example (list tasks for checklist 1): `agent-checklist list 1`
*   `agent-checklist add <checklistId> <task>`
    *   Adds a new `<task>` to the checklist specified by `<checklistId>`.
    *   Example: `agent-checklist add 1 "Write documentation"`
*   `agent-checklist complete <itemId>`
    *   Marks the task with the given `<itemId>` as completed.
    *   Example: `agent-checklist complete 3`
*   `agent-checklist remove <itemId>`
    *   Removes the task with the given `<itemId>` from its checklist.
    *   Example: `agent-checklist remove 3`
*   `agent-checklist remove-checklist <checklistId>` (alias: `rmc`)
    *   Removes the checklist specified by `<checklistId>` and all of its associated tasks.
    *   Example: `agent-checklist remove-checklist 1`
*   `agent-checklist init [-p|--platform <platform>]`
    *   Installs the Cursor rule for this CLI to `.cursor/rules/` in the current project.
    *   The default platform is `cursor`.
    *   Example: `agent-checklist init`

This project was created using `bun init` and is built with [Bun](https://bun.sh), a fast all-in-one JavaScript runtime.
