ulkan 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. ulkan-0.1.0/.agent/docs/ULKAN_MANUAL.md +75 -0
  2. ulkan-0.1.0/.agent/docs/decisions/README.md +4 -0
  3. ulkan-0.1.0/.agent/docs/guidelines/README.md +4 -0
  4. ulkan-0.1.0/.agent/docs/product/ARCHITECTURE.md +57 -0
  5. ulkan-0.1.0/.agent/docs/product/README.md +4 -0
  6. ulkan-0.1.0/.agent/docs/product/VISION.md +26 -0
  7. ulkan-0.1.0/.agent/docs/specs/README.md +4 -0
  8. ulkan-0.1.0/.agent/rules/README.md +4 -0
  9. ulkan-0.1.0/.agent/skills/README.md +4 -0
  10. ulkan-0.1.0/.agent/skills/adr-creator/SKILL.md +31 -0
  11. ulkan-0.1.0/.agent/skills/adr-creator/assets/ADR-TEMPLATE.md +49 -0
  12. ulkan-0.1.0/.agent/skills/guidelines-creator/SKILL.md +30 -0
  13. ulkan-0.1.0/.agent/skills/guidelines-creator/assets/GUIDELINE-TEMPLATE.md +22 -0
  14. ulkan-0.1.0/.agent/skills/product-docs-creator/SKILL.md +32 -0
  15. ulkan-0.1.0/.agent/skills/product-docs-creator/assets/ARCHITECTURE-TEMPLATE.md +20 -0
  16. ulkan-0.1.0/.agent/skills/product-docs-creator/assets/VISION-TEMPLATE.md +16 -0
  17. ulkan-0.1.0/.agent/skills/rules-creator/SKILL.md +41 -0
  18. ulkan-0.1.0/.agent/skills/rules-creator/assets/RULE-TEMPLATE.md +39 -0
  19. ulkan-0.1.0/.agent/skills/skill-creator/SKILL.md +55 -0
  20. ulkan-0.1.0/.agent/skills/skill-creator/assets/SKILL-TEMPLATE.md +51 -0
  21. ulkan-0.1.0/.agent/skills/specs-creator/SKILL.md +31 -0
  22. ulkan-0.1.0/.agent/skills/specs-creator/assets/SPEC-TEMPLATE.md +33 -0
  23. ulkan-0.1.0/.agent/skills/tools-creator/SKILL.md +34 -0
  24. ulkan-0.1.0/.agent/skills/tools-creator/assets/TOOL-TEMPLATE.md +70 -0
  25. ulkan-0.1.0/.agent/skills/workflows-creator/SKILL.md +30 -0
  26. ulkan-0.1.0/.agent/skills/workflows-creator/assets/WORKFLOW-TEMPLATE.md +17 -0
  27. ulkan-0.1.0/.agent/tools/README.md +4 -0
  28. ulkan-0.1.0/.agent/tools/scripts/README.md +24 -0
  29. ulkan-0.1.0/.agent/tools/scripts/lint_agent_setup.py +84 -0
  30. ulkan-0.1.0/.agent/tools/scripts/sync_agents_docs.py +125 -0
  31. ulkan-0.1.0/.agent/workflows/README.md +4 -0
  32. ulkan-0.1.0/.agent/workflows/add-to-workflow.md +40 -0
  33. ulkan-0.1.0/.agent/workflows/build.md +41 -0
  34. ulkan-0.1.0/.agent/workflows/docs.md +25 -0
  35. ulkan-0.1.0/.agent/workflows/feat.md +42 -0
  36. ulkan-0.1.0/.agent/workflows/fix.md +35 -0
  37. ulkan-0.1.0/.agent/workflows/git-flow.md +88 -0
  38. ulkan-0.1.0/.agent/workflows/migrate.md +34 -0
  39. ulkan-0.1.0/.agent/workflows/refact.md +42 -0
  40. ulkan-0.1.0/.github/workflows/ci.yml +67 -0
  41. ulkan-0.1.0/.github/workflows/release.yml +72 -0
  42. ulkan-0.1.0/.gitignore +49 -0
  43. ulkan-0.1.0/.vscode/settings.json +13 -0
  44. ulkan-0.1.0/AGENTS.md +83 -0
  45. ulkan-0.1.0/CHANGELOG.md +59 -0
  46. ulkan-0.1.0/LICENSE +21 -0
  47. ulkan-0.1.0/PKG-INFO +222 -0
  48. ulkan-0.1.0/README.md +190 -0
  49. ulkan-0.1.0/pyproject.toml +69 -0
  50. ulkan-0.1.0/scripts/install.sh +154 -0
  51. ulkan-0.1.0/src/ulkan/__init__.py +1 -0
  52. ulkan-0.1.0/src/ulkan/agents.py +255 -0
  53. ulkan-0.1.0/src/ulkan/blueprints/AGENTS.md +82 -0
  54. ulkan-0.1.0/src/ulkan/blueprints/__init__.py +123 -0
  55. ulkan-0.1.0/src/ulkan/blueprints/docs/ULKAN_MANUAL.md +42 -0
  56. ulkan-0.1.0/src/ulkan/blueprints/docs/decisions/README.md +4 -0
  57. ulkan-0.1.0/src/ulkan/blueprints/docs/guidelines/README.md +4 -0
  58. ulkan-0.1.0/src/ulkan/blueprints/docs/product/README.md +4 -0
  59. ulkan-0.1.0/src/ulkan/blueprints/docs/specs/README.md +4 -0
  60. ulkan-0.1.0/src/ulkan/blueprints/rules/README.md +4 -0
  61. ulkan-0.1.0/src/ulkan/blueprints/skills/README.md +4 -0
  62. ulkan-0.1.0/src/ulkan/blueprints/skills/adr-creator/SKILL.md +31 -0
  63. ulkan-0.1.0/src/ulkan/blueprints/skills/adr-creator/assets/ADR-TEMPLATE.md +49 -0
  64. ulkan-0.1.0/src/ulkan/blueprints/skills/guidelines-creator/SKILL.md +30 -0
  65. ulkan-0.1.0/src/ulkan/blueprints/skills/guidelines-creator/assets/GUIDELINE-TEMPLATE.md +22 -0
  66. ulkan-0.1.0/src/ulkan/blueprints/skills/product-docs-creator/SKILL.md +32 -0
  67. ulkan-0.1.0/src/ulkan/blueprints/skills/product-docs-creator/assets/ARCHITECTURE-TEMPLATE.md +20 -0
  68. ulkan-0.1.0/src/ulkan/blueprints/skills/product-docs-creator/assets/VISION-TEMPLATE.md +16 -0
  69. ulkan-0.1.0/src/ulkan/blueprints/skills/rules-creator/SKILL.md +41 -0
  70. ulkan-0.1.0/src/ulkan/blueprints/skills/rules-creator/assets/RULE-TEMPLATE.md +39 -0
  71. ulkan-0.1.0/src/ulkan/blueprints/skills/skill-creator/SKILL.md +55 -0
  72. ulkan-0.1.0/src/ulkan/blueprints/skills/skill-creator/assets/SKILL-TEMPLATE.md +51 -0
  73. ulkan-0.1.0/src/ulkan/blueprints/skills/specs-creator/SKILL.md +31 -0
  74. ulkan-0.1.0/src/ulkan/blueprints/skills/specs-creator/assets/SPEC-TEMPLATE.md +33 -0
  75. ulkan-0.1.0/src/ulkan/blueprints/skills/tools-creator/SKILL.md +34 -0
  76. ulkan-0.1.0/src/ulkan/blueprints/skills/tools-creator/assets/TOOL-TEMPLATE.md +70 -0
  77. ulkan-0.1.0/src/ulkan/blueprints/skills/workflows-creator/SKILL.md +30 -0
  78. ulkan-0.1.0/src/ulkan/blueprints/skills/workflows-creator/assets/WORKFLOW-TEMPLATE.md +17 -0
  79. ulkan-0.1.0/src/ulkan/blueprints/tools/README.md +4 -0
  80. ulkan-0.1.0/src/ulkan/blueprints/tools/scripts/README.md +24 -0
  81. ulkan-0.1.0/src/ulkan/blueprints/tools/scripts/lint_agent_setup.py +84 -0
  82. ulkan-0.1.0/src/ulkan/blueprints/tools/scripts/sync_agents_docs.py +125 -0
  83. ulkan-0.1.0/src/ulkan/blueprints/workflows/README.md +4 -0
  84. ulkan-0.1.0/src/ulkan/blueprints/workflows/add-to-workflow.md +40 -0
  85. ulkan-0.1.0/src/ulkan/blueprints/workflows/build.md +41 -0
  86. ulkan-0.1.0/src/ulkan/blueprints/workflows/docs.md +25 -0
  87. ulkan-0.1.0/src/ulkan/blueprints/workflows/feat.md +38 -0
  88. ulkan-0.1.0/src/ulkan/blueprints/workflows/fix.md +34 -0
  89. ulkan-0.1.0/src/ulkan/blueprints/workflows/git-flow.md +88 -0
  90. ulkan-0.1.0/src/ulkan/blueprints/workflows/migrate.md +34 -0
  91. ulkan-0.1.0/src/ulkan/blueprints/workflows/refact.md +36 -0
  92. ulkan-0.1.0/src/ulkan/builder.py +200 -0
  93. ulkan-0.1.0/src/ulkan/commands.py +898 -0
  94. ulkan-0.1.0/src/ulkan/generator.py +203 -0
  95. ulkan-0.1.0/src/ulkan/main.py +4 -0
  96. ulkan-0.1.0/src/ulkan/manager.py +346 -0
  97. ulkan-0.1.0/src/ulkan/migrator.py +284 -0
  98. ulkan-0.1.0/src/ulkan/styles.py +83 -0
  99. ulkan-0.1.0/src/ulkan/syncer.py +167 -0
  100. ulkan-0.1.0/uv.lock +346 -0
@@ -0,0 +1,75 @@
1
+ # 📘 Ulkan Operator's Manual
2
+
3
+ **Welcome, Agent.**
4
+ You are operating within an **Ulkan-scaffolded environment**. This manual is your "Driver's License" for this system. It explains the tools, commands, and structures available to you.
5
+
6
+ ---
7
+
8
+ ## 🚀 1. The Command Line Interface (CLI)
9
+
10
+ You have access to the `ulkan` CLI. Use it to maintain the project and your own context.
11
+
12
+ ### Core Commands
13
+
14
+ | Command | Usage | When to use |
15
+ | :--- | :--- | :--- |
16
+ | **`ulkan search`** | `ulkan search <query>` | Search the **Skyll API** for Skills, Workflows, or Tools to add to your project. Supports sorting (`--sort installs`). |
17
+ | **`ulkan list`** | `ulkan list <type>` | View what assets are currently installed in your `.agent/` directory. Use `ulkan list all` to see everything. |
18
+ | **`ulkan add`** | `ulkan add <type> <name>` | Install an asset from the registry (API or local). E.g., `ulkan add skill react-best-practices`. |
19
+ | **`ulkan sync`** | `ulkan sync` | **ALWAYS** after creating or modifying a Skill, Rule, or Workflow. This updates `AGENTS.md` automatically. |
20
+ | **`ulkan build`** | `ulkan build` | When you need to re-analyze the project context and update the "Tech Stack" section of `AGENTS.md`. |
21
+ | **`ulkan adapt`** | `ulkan adapt --[agent]` | If you lose your configuration files. Restores symlinks for specific agents (e.g., `ulkan adapt --claude`). |
22
+ | **`ulkan migrate`** | `ulkan migrate` | If you find legacy configuration folders (like `.claude/` or `.gemini/`) that need to be unified into `.agent/`. |
23
+
24
+ ---
25
+
26
+ ## 📂 2. The `.agent/` Directory
27
+
28
+ This is your "brain". All your instructions and capabilities are stored here.
29
+
30
+ ```
31
+ .agent/
32
+ ├── skills/ # YOUR CAPABILITIES. specialized tasks you can perform.
33
+ │ ├── skill-creator/
34
+ │ ├── adr-creator/
35
+ │ └── ...
36
+ ├── workflows/ # YOUR PROCEDURES. Step-by-step guides for complex tasks.
37
+ │ ├── feat.md # usage: /feat
38
+ │ ├── fix.md # usage: /fix
39
+ │ └── ...
40
+ ├── rules/ # YOUR CONSTRAINTS. "Always-on" policies.
41
+ ├── docs/ # PROJECT MEMORY.
42
+ │ ├── product/ # Vision, Architecture
43
+ │ ├── specs/ # Feature Specifications
44
+ │ └── decisions/ # Architecture Decision Records (ADRs)
45
+ └── tools/ # YOUR HANDS. Scripts and utilities.
46
+ └── scripts/ # Python scripts you can run (e.g., sync_agents_docs.py)
47
+ ```
48
+
49
+ ---
50
+
51
+ ## 🛠️ 3. How to Use Your Skills
52
+
53
+ You don't just "write code". You use **Skills** to perform high-value actions.
54
+ * **Need to create a new feature?** -> Check `workflows/feat.md`.
55
+ * **Need to document a decision?** -> Read `skills/adr-creator/SKILL.md` and follow it.
56
+ * **Need to create a new tool?** -> Read `skills/tools-creator/SKILL.md`.
57
+
58
+ **💡 Pro Tip**: If you are asked to do something complex, **first check if there is a Skill or Workflow for it**. providing a standardized output is better than guessing.
59
+
60
+ ---
61
+
62
+ ## 🔄 4. Self-Correction & Maintenance
63
+
64
+ ### "I created a new Skill but it's not in AGENTS.md!"
65
+ > Run `ulkan sync`. This script parses the `.agent/skills` directory and updates the table in `AGENTS.md`.
66
+
67
+ ### "I found a bug in a workflow."
68
+ > You are allowed to improve the system! Edit the relevant `.md` file in `.agent/workflows/` and run `ulkan sync`.
69
+
70
+ ### "The project architecture has changed."
71
+ > Update `.agent/docs/product/ARCHITECTURE.md`. Keep the documentation alive.
72
+
73
+ ---
74
+
75
+ *End of Manual.*
@@ -0,0 +1,4 @@
1
+ # Decisions (ADRs)
2
+ Architecture Decision Records (ADRs) for significant storage decisions.
3
+
4
+ 👉 **To record a decision:** Use the `adr-creator` skill.
@@ -0,0 +1,4 @@
1
+ # Guidelines
2
+ Coding standards, naming conventions, and best practices.
3
+
4
+ 👉 **To add a new guideline:** Use the `guidelines-creator` skill.
@@ -0,0 +1,57 @@
1
+ # Architecture Overview: Ulkan
2
+
3
+ ## 1. High-Level Design
4
+
5
+ Ulkan operates on a "Hub and Spoke" model:
6
+ * **Hub**: The `.agent/` directory (Single Source of Truth).
7
+ * **Spokes**: The adapter files (e.g., `.claude/`, `copilot-instructions.md`) used by specific tools.
8
+ * **Engine**: The `ulkan` CLI which manages the synchronization between Hub and Spokes.
9
+
10
+ ## 2. Tech Stack
11
+
12
+ | Component | Technology | Rationale |
13
+ | :--- | :--- | :--- |
14
+ | **Language** | Python 3.12+ | Modern, typed, compliant with latest standards. |
15
+ | **CLI Framework** | `typer` | Type-hint based CLI creation, robust and easy to maintain. |
16
+ | **Terminal UI** | `rich` | Beautiful, readable output is critical for developer tools. |
17
+ | **Interactivity** | `inquirerpy` | robust interactive prompts for `init` and selection flows. |
18
+ | **Packaging** | `hatchling` | Modern standards-based build backend. |
19
+
20
+ ## 3. Project Structure
21
+
22
+ ```
23
+ src/ulkan/
24
+ ├── main.py # Entry point
25
+ ├── commands.py # CLI command definitions (init, build, adapt, sync)
26
+ ├── agents.py # Logic for specific AI agent adapters
27
+ ├── generator.py # Scaffolding logic (creating .agent structure)
28
+ ├── migrator.py # Logic for ingesting existing agent configs
29
+ ├── syncer.py # Documentation synchronization logic
30
+ ├── builder.py # "AI Build" logic (LLM interaction)
31
+ └── templates/ # Jinja2 templates for artifacts
32
+ ```
33
+
34
+ ## 4. Core Concepts
35
+
36
+ ### 4.1. Single Source of Truth (SSOT)
37
+ The `.agent/` folder contains canonical data:
38
+ * `skills/`: Reusable capabilities (e.g., "Create React Component").
39
+ * `workflows/`: Standard operating procedures (e.g., "Bug Fix Workflow").
40
+ * `rules/`: Active constraints.
41
+ * `docs/`: Product context.
42
+
43
+ ### 4.2. Adaptation
44
+ The `adapt` command creates symbolic links or generated files mapping the SSOT to vendor-specific formats.
45
+ * *Example*: `.agent` -> `.claude` (Symlink) allows Claude CLI to see the standard structure as its own context.
46
+
47
+ ### 4.3. Synchronization
48
+ The `sync` command ensures `AGENTS.md` (the human/agent readable index) reflects the actual state of the `.agent/` directory.
49
+
50
+ ## 5. Data Flow
51
+
52
+ 1. **User** runs `ulkan init`.
53
+ 2. **Generator** creates `.agent/` structure.
54
+ 3. **User** runs `ulkan adapt --claude`.
55
+ 4. **Adapter** symlinks `.agent` to `.claude`.
56
+ 5. **User** runs `ulkan build`.
57
+ 6. **Builder** invokes the AI Agent to read project code and populate `AGENTS.md` context sections.
@@ -0,0 +1,4 @@
1
+ # Product Docs
2
+ High-level product documentation like Vision and Architecture.
3
+
4
+ 👉 **To create/reset docs:** Use the `product-docs-creator` skill.
@@ -0,0 +1,26 @@
1
+ # Product Vision: Ulkan
2
+
3
+ ## 1. Mission Statement
4
+ To make "agent-ready" the default state for every software project, eliminating the friction between human developers and AI assistants.
5
+
6
+ ## 2. The Problem
7
+ * **Fragmentation**: Every developer configures their AI agent differently (system prompts, recommended extensions, ignored files).
8
+ * **Context Loss**: AI agents often lack the "big picture" (architecture, conventions, business goals) leading to hallucinations or misaligned code.
9
+ * **Maintenance Burden**: Keeping `CLAUDE.md`, `.cursorrules`, and custom instructions in sync is manual and error-prone.
10
+
11
+ ## 3. The Solution: Ulkan
12
+ Ulkan is an **Agentic Scaffolding Tool** that provides a standardized, agent-agnostic interface for any codebase.
13
+
14
+ * **Standardized Context**: A strictly defined `.agent/` directory structure acting as the Single Source of Truth (SSOT).
15
+ * **Universal Compatibility**: Adapters that automatically generate configuration for specific agents (Claude, Gemini, Copilot, etc.) from the SSOT.
16
+ * **Living Documentation**: CLI tools (`ulkan sync`, `ulkan build`) that keep documentation fresh and accurate.
17
+
18
+ ## 4. Target Audience
19
+ * **Software Engineers** adapting to AI-assisted workflows.
20
+ * **Tech Leads** wanting to enforce consistency across team members' AI agents.
21
+ * **maintainers** of open-source projects who want to make their code base easily understandable by AI contributors.
22
+
23
+ ## 5. Core Values
24
+ * **Zero Magic**: Everything is explicit files and folders.
25
+ * **Agent Agnostic**: Don't lock into one specific AI vendor.
26
+ * **Automated Maintenance**: If it can be scripted, it shouldn't be a wiki page.
@@ -0,0 +1,4 @@
1
+ # Specs
2
+ Feature specifications and technical requirements.
3
+
4
+ 👉 **To add a new spec:** Use the `specs-creator` skill.
@@ -0,0 +1,4 @@
1
+ # Rules
2
+ Always-on constraints: code style, security policies, conventions.
3
+
4
+ 👉 **To add a new rule:** Use the `rules-creator` skill.
@@ -0,0 +1,4 @@
1
+ # Skills
2
+ Modular capabilities loaded on demand. Each skill should have its own folder with a `SKILL.md`.
3
+
4
+ 👉 **To add a new skill:** Use the `skill-creator` skill.
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: adr-creator
3
+ description: >
4
+ Creates updated Architecture Decision Records (ADRs).
5
+ Trigger: When user asks to document a decision, change component, or record architectural choice.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating new ADR"
12
+ trigger: "Record decision"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
14
+ ---
15
+
16
+ ## When to Create an ADR
17
+
18
+ Create an ADR when:
19
+ - A significant architectural decision is made.
20
+ - A new technology or pattern is introduced.
21
+ - A decision has non-trivial trade-offs.
22
+ - A previous decision is superseded or deprecated.
23
+
24
+ ## ADR Location
25
+
26
+ ADRs are located in `.agent/docs/decisions/`.
27
+ Format: `{number}-{kebab-case-title}.md` (e.g., `001-use-postgres.md`).
28
+
29
+ ## Resources
30
+
31
+ - **Templates**: See [assets/](assets/) for ADR-TEMPLATE.md (Michael Nygard format).
@@ -0,0 +1,49 @@
1
+ ---
2
+ status: {proposed | accepted | rejected | deprecated | superseded}
3
+ date: {YYYY-MM-DD}
4
+ deciders: {list of people involved}
5
+ ---
6
+
7
+ # {Title}
8
+
9
+ ## Context and Problem Statement
10
+
11
+ {Describe the context and problem statement, e.g., in free form using two to three sentences. You may want to articulate the problem in form of a question.}
12
+
13
+ ## Decision Drivers
14
+
15
+ * {driver 1, e.g., a force, facing concern, …}
16
+ * {driver 2, e.g., a force, facing concern, …}
17
+
18
+ ## Considered Options
19
+
20
+ * {option 1}
21
+ * {option 2}
22
+ * {option 3}
23
+
24
+ ## Decision Outcome
25
+
26
+ Chosen option: "{option 1}", because {justification}.
27
+
28
+ ### Positive Consequences
29
+
30
+ * {positive consequence 1}
31
+ * {positive consequence 2}
32
+
33
+ ### Negative Consequences
34
+
35
+ * {negative consequence 1}
36
+ * {negative consequence 2}
37
+
38
+ ## Pros and Cons of the Options
39
+
40
+ ### {option 1}
41
+
42
+ * Good, because {argument a}
43
+ * Good, because {argument b}
44
+ * Bad, because {argument c}
45
+
46
+ ### {option 2}
47
+
48
+ * Good, because {argument a}
49
+ * Bad, because {argument b}
@@ -0,0 +1,30 @@
1
+ ---
2
+ name: guidelines-creator
3
+ description: >
4
+ Creates strict guidelines or best practices documentation.
5
+ Trigger: When user asks to document coding standards, naming conventions, or recommended workflows.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating guidelines"
12
+ trigger: "Define standard"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
14
+ ---
15
+
16
+ ## When to Create Guidelines
17
+
18
+ Create a guideline when:
19
+ - Establishing a coding standard (e.g., Python style, React hooks usage).
20
+ - Defining a workflow (e.g., Git commit messages, PR process).
21
+ - Documenting best practices that are encouraged but not strictly enforced by linter.
22
+
23
+ ## Guidelines Location
24
+
25
+ Guidelines are located in `.agent/docs/guidelines/`.
26
+ Format: `{topic-kebab-case}.md` (e.g., `python-style-guide.md`).
27
+
28
+ ## Resources
29
+
30
+ - **Templates**: See [assets/](assets/) for GUIDELINE-TEMPLATE.md
@@ -0,0 +1,22 @@
1
+ # {Guideline Title}
2
+
3
+ ## Context
4
+ {Why is this guideline necessary? What goal does it support?}
5
+
6
+ ## The Guideline
7
+ {Clear description of the practice or standard.}
8
+
9
+ ## Examples
10
+
11
+ ### ✅ Do This
12
+ ```{language}
13
+ {Correct example}
14
+ ```
15
+
16
+ ### ❌ Don't Do This
17
+ ```{language}
18
+ {Incorrect example}
19
+ ```
20
+
21
+ ## Exceptions
22
+ {When does this guideline NOT apply?}
@@ -0,0 +1,32 @@
1
+ ---
2
+ name: product-docs-creator
3
+ description: >
4
+ Creates key product documentation (Vision, Architecture) using standard templates.
5
+ Trigger: When user asks to create, reset, or initialize product vision or architecture docs.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating product docs"
12
+ trigger: "Vision/Architecture"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
14
+ ---
15
+
16
+ ## When to Create Product Docs
17
+
18
+ Use this skill when:
19
+ - Starting a new project or module.
20
+ - The `VISION.md` or `ARCHITECTURE.md` files are missing.
21
+ - You want to reset these documents to a standard structure.
22
+
23
+ ## Document Types & Locations
24
+
25
+ | Type | File | Description |
26
+ |------|------|-------------|
27
+ | **Vision** | `.agent/docs/product/VISION.md` | Product goals, target audience, needs. |
28
+ | **Architecture** | `.agent/docs/product/ARCHITECTURE.md` | High-level system design, C4 context, stack. |
29
+
30
+ ## Resources
31
+
32
+ - **Templates**: See [assets/](assets/) for VISION-TEMPLATE.md and ARCHITECTURE-TEMPLATE.md
@@ -0,0 +1,20 @@
1
+ # System Architecture
2
+
3
+ ## Overview
4
+ {High-level description of the system}
5
+
6
+ ## Component Diagram (C4 Context)
7
+ ```mermaid
8
+ graph TD
9
+ User -->|Uses| System
10
+ System -->|Queries| Database
11
+ ```
12
+
13
+ ## Tech Stack
14
+ - **Frontend**: {React, Vue, etc.}
15
+ - **Backend**: {Python, Node, etc.}
16
+ - **Database**: {Postgres, Mongo, etc.}
17
+ - **Infra**: {Docker, K8s, AWS}
18
+
19
+ ## Key Patterns
20
+ - {Event Sourcing, CQRS, MVC, etc.}
@@ -0,0 +1,16 @@
1
+ # Product Vision
2
+
3
+ ## Vision Statement
4
+ {Concise, aspiring statement of the future state}
5
+
6
+ ## Target Group
7
+ {Who are the users and customers?}
8
+
9
+ ## Needs
10
+ {What problem does the product solve? What benefit does it provide?}
11
+
12
+ ## Product
13
+ {What product is it? What are the key features?}
14
+
15
+ ## Business Goals
16
+ {How will the product benefit the company? Revenue, growth, etc.}
@@ -0,0 +1,41 @@
1
+ ---
2
+ name: rules-creator
3
+ description: >
4
+ Creates new AI agent rules to enforce system constraints.
5
+ Trigger: When user asks to define a new constraint, policy, convention, or "always-on" rule.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating new rules"
12
+ trigger: "Add a rule"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
14
+ ---
15
+
16
+ ## When to Create a Rule
17
+
18
+ Create a rule when:
19
+ - A pattern must be enforced across the entire project (or specific scopes)
20
+ - Security policies need to be explicitly documented for agents
21
+ - Code style conventions are strict and not just "best practices"
22
+ - There are "always-on" constraints that agents must never violate
23
+
24
+ **Don't create a rule when:**
25
+ - It's a suggestion or guideline (use `docs/guidelines/` instead)
26
+ - It's a temporary constraint
27
+ - It's specific to a single file (add a comment instead)
28
+
29
+ ---
30
+
31
+ ## Rule Structure
32
+
33
+ ```
34
+ .agent/rules/{rule-name}.md
35
+ ```
36
+
37
+ Rules are flat markdown files in `.agent/rules/`.
38
+
39
+ ## Resources
40
+
41
+ - **Templates**: See [assets/](assets/) for RULE-TEMPLATE.md
@@ -0,0 +1,39 @@
1
+ ---
2
+ name: {rule-name}
3
+ description: {Short description of the rule}
4
+ trigger: {When this rule applies e.g. "Always", "On Python files"}
5
+ scope: {Glob pattern e.g. "**/*.py", "src/legacy/**"}
6
+ priority: {High/Medium/Low}
7
+ ---
8
+
9
+ ## The Rule
10
+
11
+ {Clear, imperative statement of what rules must be followed or what actions are forbidden.}
12
+
13
+ ## Why
14
+
15
+ {Brief explanation of the reasoning behind this rule.}
16
+
17
+ ## Valid Examples
18
+
19
+ ### ✅ Do This
20
+
21
+ ```{language}
22
+ {code example}
23
+ ```
24
+
25
+ ## Invalid Examples
26
+
27
+ ### ❌ Don't Do This
28
+
29
+ ```{language}
30
+ {code example}
31
+ ```
32
+
33
+ ## Exceptions
34
+
35
+ {List any exceptions to this rule, or "None".}
36
+
37
+ ## Enforcement
38
+
39
+ {How this rule is enforced or verified.}
@@ -0,0 +1,55 @@
1
+ ---
2
+ name: skill-creator
3
+ description: >
4
+ Creates new AI agent skills following the Agent Skills spec.
5
+ Trigger: When user asks to create a new skill, add agent instructions, or document patterns for AI.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating new skills"
12
+ trigger: "Create/Add a skill"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, WebFetch, WebSearch, Task
14
+ ---
15
+
16
+ ## When to Create a Skill
17
+
18
+ Create a skill when:
19
+ - A pattern is used repeatedly and AI needs guidance
20
+ - Project-specific conventions differ from generic best practices
21
+ - Complex workflows need step-by-step instructions
22
+ - Decision trees help AI choose the right approach
23
+
24
+ **Don't create a skill when:**
25
+ - Documentation already exists (create a reference instead)
26
+ - Pattern is trivial or self-explanatory
27
+ - It's a one-off task
28
+
29
+ ---
30
+
31
+ ## Skill Structure
32
+
33
+ ```
34
+ skills/{skill-name}/
35
+ ├── SKILL.md # Required - main skill file
36
+ ├── assets/ # Optional - templates, schemas, examples
37
+ │ ├── template.py
38
+ │ └── schema.json
39
+ └── references/ # Optional - links to local docs
40
+ └── docs.md # Points to docs/developer-guide/*.mdx
41
+ ```
42
+
43
+ ---
44
+
45
+ ## Naming Conventions
46
+
47
+ | Type | Pattern | Examples |
48
+ |------|---------|----------|
49
+ | Generic skill | `{technology}` | `pytest`, `playwright`, `typescript` |
50
+ | Project-specific | `project-{component}` | `project-api`, `project-ui` |
51
+ | Workflow skill | `{action}-{target}` | `skill-creator`, `jira-task` |
52
+
53
+ ## Resources
54
+
55
+ - **Templates**: See [assets/](assets/) for SKILL.md template
@@ -0,0 +1,51 @@
1
+ ---
2
+ name: {skill-name}
3
+ description: >
4
+ {Short description of what this skill does}
5
+ Trigger: {When should this skill be used?}
6
+ trigger: "{Short trigger phrase for AGENTS.md}"
7
+ license: Apache-2.0
8
+ metadata:
9
+ author: {github-url}
10
+ agent: {agent-name}
11
+ version: "1.0"
12
+ scope: [root]
13
+ auto_invoke: "{When should this skill be automatically invoked?}"
14
+ allowed-tools: {List, Of, Allowed, Tools, Or, *}
15
+ ---
16
+
17
+ ## When to Use
18
+
19
+ Use this skill when:
20
+ - {Condition 1}
21
+ - {Condition 2}
22
+
23
+ ---
24
+
25
+ ## Critical Patterns
26
+
27
+ {The MOST important rules - what AI MUST follow}
28
+
29
+ ---
30
+
31
+ ## Code Examples
32
+
33
+ ### Example 1: {Description}
34
+
35
+ ```{language}
36
+ {minimal, focused example}
37
+ ```
38
+
39
+ ---
40
+
41
+ ## Commands
42
+
43
+ ```bash
44
+ {command 1} # {description}
45
+ ```
46
+
47
+ ---
48
+
49
+ ## Resources
50
+
51
+ - **Templates**: See [assets/](assets/) for {description of templates}
@@ -0,0 +1,31 @@
1
+ ---
2
+ name: specs-creator
3
+ description: >
4
+ Creates new technical specifications and feature requirement documents.
5
+ Trigger: When user asks to create a new spec, feature doc, or technical requirement.
6
+ license: Apache-2.0
7
+ metadata:
8
+ author: ulkan
9
+ version: "1.0"
10
+ scope: [root]
11
+ auto_invoke: "Creating new specs"
12
+ trigger: "New feature spec"
13
+ allowed-tools: Read, Edit, Write, Glob, Grep, Bash, Task
14
+ ---
15
+
16
+ ## When to Create a Spec
17
+
18
+ Create a spec when:
19
+ - Starting a new feature or component.
20
+ - Documenting complex technical requirements.
21
+ - Planning a major refactor or migration.
22
+ - The user requests a "spec" or "design doc".
23
+
24
+ ## Spec Location
25
+
26
+ Specs are located in `.agent/docs/specs/{feature-name}/`.
27
+ Each spec should be a self-contained markdown file, e.g., `SPEC.md` or `{feature}-v1.md`.
28
+
29
+ ## Resources
30
+
31
+ - **Templates**: See [assets/](assets/) for SPEC-TEMPLATE.md.
@@ -0,0 +1,33 @@
1
+ ---
2
+ feature: {feature-name}
3
+ status: {draft | in-progress | implemented | deprecated}
4
+ last_updated: {YYYY-MM-DD}
5
+ title: {Human Readable Title}
6
+ owner: {Team or Individual}
7
+ priority: {P0 | P1 | P2}
8
+ ---
9
+
10
+ ## Background
11
+
12
+ {Context and problem statement. Why are we building this?}
13
+
14
+ ## Requirements
15
+
16
+ ### Functional
17
+ - {Requirement 1}
18
+ - {Requirement 2}
19
+
20
+ ### Non-Functional
21
+ - {Performance, Security, Reliability}
22
+
23
+ ## API Design
24
+
25
+ {Endpoints, data models, interfaces}
26
+
27
+ ## UI/UX
28
+
29
+ {Screenshots, wireframes, or descriptions of user interaction}
30
+
31
+ ## Open Questions
32
+
33
+ - {Question 1}