Agent skill

Packmind Create Command

by PackmindHub in PackmindHub/packmind

Guide for creating reusable commands via the Packmind CLI. An agent skill from PackmindHub/packmind.

Apache-2.0Auto-check passedProductivity & Automation

Install Packmind Create Command

skills CLI
$ npx skills add PackmindHub/packmind --skill packmind-create-command -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install PackmindHub/packmind packmind-create-command --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.gitlab/duo/skills/packmind-create-command .claude/skills/packmind-create-command && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
packmind-create-command
GitHub stars
317
Token cost
~3k tokens
SKILL.md length
1,265 words
Files
3
Skills in repo
35
Repo updated
First seen
Licence
Apache-2.0

At a glance

Guide for creating reusable commands via the Packmind CLI. An agent skill from PackmindHub/packmind.

  • Works in 6 steps: Understanding the Command's Purpose → Design Command in Markdown → Review Before Submission → …
  • Tasks that involve Workflow automation
  • SKILL.md covers About Commands, Prerequisites, Command Creation Process and Complete Example, plus 1 more section
  • Calls npm

What it does

Packmind Create Command is an agent skill from PackmindHub/packmind. Guide for creating reusable commands via the Packmind CLI. This skill should be used when users want to create a new command that captures multi-step workflows, recipes, or task automation for distribution to GitLab Duo.

Its SKILL.md is about 3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `README.md`).

It sits in Productivity & Automation, covering Workflow automation. It works with GitLab. The repository describes itself as: Packmind seamlessly captures your engineering playbook and turns it into AI context, guardrails, and governance. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Workflow automation

Example prompts

  • “/packmind-create-command”

Requirements

  • Node.js

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Understanding the Command's Purpose
  2. Design Command in Markdown
  3. Review Before Submission
  4. Confirm and Submit
  5. Cleanup
  6. Offer to Add to Package

What it can do on your machine

Read from SKILL.md and the folder at commit 858ed50. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Packmind Create Command loads about 3k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 1,265 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from PackmindHub/packmind at commit 858ed50, republished under its Apache-2.0 licence (© PackmindHub). 1,265 words, ~3,049 tokens.

Download SKILL.mdSave it as .claude/skills/packmind-create-command/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
packmind-create-command
description
Guide for creating reusable commands via the Packmind CLI. This skill should be used when users want to create a new command that captures multi-step workflows, recipes, or task automation for distribution to GitLab Duo.
license
Complete terms in LICENSE.txt
metadata.packmind-cli-version
< 0.25.0

Command Creator

This skill provides a complete walkthrough for creating reusable commands via the Packmind CLI.

About Commands

Commands are structured, multi-step workflows that capture repeatable tasks, recipes, and automation patterns. They help teams standardize common development workflows and enable GitLab Duo to execute complex tasks consistently.

What Commands Provide
  1. Multi-step workflows - Structured sequences of actions to accomplish a task
  2. Context validation - Checkpoints to ensure requirements are met before execution
  3. When-to-use guidance - Clear scenarios describing when the command is applicable
  4. Code snippets - Optional examples demonstrating each step's implementation
Command Structure

Every command is drafted as a markdown file with this structure:

# Command Name

## Summary

What the command does, why it's useful, and when it's relevant.

## When to Use

- Scenario 1 when this command applies
- Scenario 2 when this command applies

## Context Validation Checkpoints

- Question 1 to validate before proceeding?
- Question 2 to ensure context is clear?

## Steps

### Step Name

What this step does and how to implement it.

\`\`\`typescript
// Optional code example
\`\`\`

### Another Step

Description without code.
Naming Guidelines

The # Title heading is the display name shown in indexes and dashboards. The slug is auto-generated from it — never write the slug yourself.

Format: Use Title Case with spaces — natural language, not a slug.

  • Capitalize each significant word
  • Start with an action verb (e.g., "Create", "Setup", "Configure")
  • Use spaces between words, never hyphens or underscores
  • Be descriptive and specific (2–5 words)

Examples:

  • Good: "Create API Endpoint", "Setup Database Migration", "Configure CI Pipeline"
  • Bad: "api-endpoint" (slug format — use Title Case with spaces)
  • Bad: "setup migration" (not Title Case)
  • Bad: "create-api-endpoint" (slug format)
Markdown Structure Requirements

The CLI validates the command after conversion. Ensure the markdown file meets these requirements:

  • # Title: Non-empty Title Case string starting with an action verb, descriptive and specific (2–5 words, e.g., "Create API Endpoint")
  • ## Summary: Non-empty string describing intent, value, and relevance
  • ## When to Use: At least one bullet item (non-empty strings)
  • ## Context Validation Checkpoints: At least one bullet item (non-empty strings)
  • ## Steps: At least one step subsection
  • ### Step Name: Non-empty string (step title)
  • Step body paragraph: Non-empty string (implementation details)
  • Step body code block (optional): Code fenced with language identifier (e.g., ```typescript)

Prerequisites

Before creating a command, verify that packmind-cli is available:

Check if packmind-cli is installed:

bash
packmind-cli --version

If not available, install it:

bash
npm install -g @packmind/cli

Then login to Packmind:

bash
packmind-cli login

Command Creation Process

Step 1: Understanding the Command's Purpose

Skip this step only when the command's workflow and steps are already clearly defined.

To create an effective command, clearly understand:

  1. What workflow does this command automate?

    • Example: "Setting up a new API endpoint with tests"
    • Example: "Creating a new React component with proper structure"
  2. When should this command be triggered?

    • Specific scenarios (e.g., "When adding a new feature")
    • Specific contexts (e.g., "After creating a domain entity")

Example clarifying questions:

  • "What multi-step workflow do you want to automate?"
  • "What scenarios should trigger this command?"
  • "What context needs to be validated before running this workflow?"
Step 2: Design Command in Markdown

Transform the understanding from Step 1 into a complete markdown draft with steps and validation checkpoints.

Draft Creation
  1. Create a draft markdown file in .packmind/commands/_drafts/ (create the folder if missing) using filename <slug>.md (lowercase with hyphens)
  2. Draft structure:
    • # <Command Title> (Title Case, action-verb prefix, 2–5 words)
    • ## Summary — what the command does, why it's useful, and when it's relevant
    • ## When to Use — bullet list of specific scenarios
    • ## Context Validation Checkpoints — bullet list of validation questions
    • ## Steps — each step as a ### <step title> subsection following the Step Writing Guidelines below
    • For each step that benefits from a code example, add a language-annotated code block

This draft file is the only file created during drafting — no separate files are needed.

Step Writing Guidelines
  1. Clear name - Use a concise title (e.g., "Setup Dependencies", "Create Test File")
  2. Actionable description - Explain what to do and how to implement it
  3. One concept per step - Focus on a single action
  4. Optional code snippet - Include when it clarifies the implementation

Good descriptions:

  • "Create a new file at `src/components/{ComponentName}.tsx` with the basic component structure including props interface and default export"

Bad descriptions:

  • "Create file" (too vague)
Context Validation Checkpoints

Questions that verify requirements before execution:

Good checkpoints:

  • "Is the component name and location specified?"
  • "Are the API endpoint requirements (method, path, payload) defined?"

Bad checkpoints:

  • "Ready to start?" (doesn't validate anything)
When-To-Use Scenarios

Define specific, actionable scenarios:

Good scenarios:

  • "When adding a new REST endpoint to the API"
  • "After creating a new domain entity that needs persistence"

Bad scenarios:

  • "When coding" (too broad)
Step 3: Review Before Submission

Before running the CLI command, you MUST get explicit user approval:

  1. Show the user the complete command content in a formatted preview:

    • Name
    • Summary
    • When to use scenarios
    • Context validation checkpoints
    • Each step with name, description, and code snippet (if any)
  2. Provide the file path to the markdown file (.packmind/commands/_drafts/<slug>.md) so users can open and edit it directly if needed.

  3. Ask: "Here is the command that will be created on Packmind. The draft file is at `<path>` if you want to review or edit it. Do you approve?"

  4. Wait for explicit user confirmation before proceeding to Step 4.

  5. If the user requests changes, go back to earlier steps to make adjustments.

Show full SKILL.md (457 more words)Show less
Step 4: Confirm and Submit
  1. Re-read the markdown file from disk to capture any user edits.

  2. Compare with the original content you created in Step 2.

  3. If changes were detected:

    • Display the formatted preview again (same format as Step 3)
    • Ask: "The file was modified. Here is the updated content that will be sent. Do you confirm?"
    • Wait for explicit confirmation before proceeding.
  4. If no changes: Proceed directly to submission.

  5. Convert the markdown to JSON using these conversion rules:

    • # heading → name
    • ## Summary content → summary
    • ## When to Use bullet items → whenToUse[]
    • ## Context Validation Checkpoints bullet items → contextValidationCheckpoints[]
    • Each ### ... under ## Steps → step name, paragraph text → description, code block → codeSnippet (wrapped in markdown code fences with language identifier)
  6. Pipe the JSON directly to the CLI via stdin using a heredoc (no intermediate file needed):

bash
packmind-cli commands create --origin-skill packmind-create-command <<'EOF'
{"name":"...","summary":"...","whenToUse":[...],"contextValidationCheckpoints":[...],"steps":[...]}
EOF

Expected output on success:

packmind-cli Command "Your Command Name" created successfully (ID: <uuid>)
View it in the webapp: <url>
Troubleshooting

"Not logged in" error:

bash
packmind-cli login

"Failed to resolve global space" error:

  • Verify your API key is valid
  • Check network connectivity to Packmind server

Validation errors:

  • Ensure all required sections are present in the markdown file
  • Check that the ## Steps section has at least one ### step subsection
  • Verify code blocks have language annotations
Step 5: Cleanup

After the command is successfully created, delete the draft markdown file in .packmind/commands/_drafts/.

Only clean up on success - if the CLI command fails, keep the files so the user can retry.

Step 6: Offer to Add to Package

After successful creation, check if the command fits an existing package:

  1. Run packmind-cli install --list to get available packages
  2. If no packages exist, skip this step silently and end the workflow
  3. Analyze the created command's name and summary against each package's name and description
  4. If a package is a clear semantic fit (the command's domain/technology aligns with the package's purpose):
    • Present to user: "This command seems to fit the <package-slug> package."
    • Offer three options:
      • Add to <package-slug>
      • Choose a different package
      • Skip
  5. If no clear fit is found, skip silently (do not mention packages)
  6. If user chooses to add:
    • Run: packmind-cli packages add --to <package-slug> --command <command-slug>
    • Ask: "Would you like me to run packmind-cli install to sync the changes?"
    • If yes, run: packmind-cli install

Complete Example

Here's a complete example creating a command for setting up a new API endpoint:

File: .packmind/commands/_drafts/create-api-endpoint.md

markdown
# Create API Endpoint

## Summary

Set up a new REST API endpoint with controller, service, and tests following the hexagonal architecture pattern.

## When to Use

- When adding a new REST endpoint to the API
- When implementing a new backend feature that exposes HTTP endpoints

## Context Validation Checkpoints

- Is the HTTP method and path defined (e.g., POST /users)?
- Is the request/response payload structure specified?
- Is the associated use case or business logic identified?

## Steps

### Create Controller

Create the controller file in the \`infra/http/controllers/\` directory with the endpoint handler and input validation.

\`\`\`typescript
@Controller('users')
export class UsersController {
  @Post()
  async create(@Body() dto: CreateUserDTO) {
    return this.useCase.execute(dto);
  }
}
\`\`\`

### Create Use Case

Create the use case in the \`application/useCases/\` directory implementing the business logic.

### Create Tests

Create unit tests for the controller and use case in their respective \`.spec.ts\` files following the Arrange-Act-Assert pattern.

### Register in Module

Add the controller and use case to the appropriate NestJS module's \`controllers\` and \`providers\` arrays.

Creating the command (piped via stdin):

bash
packmind-cli commands create --origin-skill packmind-create-command <<'EOF'
{"name":"Create API Endpoint","summary":"Set up a new REST API endpoint...","whenToUse":[...],"contextValidationCheckpoints":[...],"steps":[...]}
EOF

Quick Reference

SectionRequiredDescription
# TitleYesTitle Case, action-verb prefix, 2–5 words
## SummaryYesWhat, why, and when (one sentence)
## When to UseYesBullet list, at least one scenario
## Context Validation CheckpointsYesBullet list, at least one checkpoint
## StepsYesContains step subsections
### Step NameYes (≥1)Step title
Step body (paragraph)YesImplementation details
Step body (code block)NoMarkdown code block with language

© PackmindHub, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in .gitlab/duo/skills/packmind-create-command of PackmindHub/packmind.

  • SKILL.md
  • LICENSE.txt
  • README.md

Open the folder on GitHubat commit 858ed50

Compare with similar skills

Packmind Create Command next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Packmind Create Command compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Packmind Create Command this skillPackmindHub/packmind317—~3kAutomated safety check: PassApache-2.0
Robocorp Automationrobocorp/robocorp653—~2.4kAutomated safety check: PassApache-2.0
Connect Apps with ComposioComposioHQ/awesome-claude-skills77k3 repos~557Automated safety check: PassNone
Zapier SDKzapier/sdk262—~2.9kAutomated safety check: PassMIT
Zapier Demozapier/zapier-mcp428—~2.7kAutomated safety check: PassMIT
Justdisler/bowser265—~792Automated safety check: NotesNone

Similar skills

  • Robocorp Automation

    robocorp/robocorp

    Bootstrap from an empty folder or build, debug, locally run, and validate Python automations built with Robocorp or Sema4.ai tooling, robocorp.tasks, rcc, robocorp-browser, and RPA Framework.

    653 GitHub stars~2.4k tokensUpdated 6 days ago
    Productivity & AutomationAuto-check passed
  • Connect Apps with Composio

    ComposioHQ/awesome-claude-skills

    Connects an agent to 1000+ external apps through the Composio Tool Router plugin, so it can actually send emails, create issues and post messages instead of only drafting them.

    77k GitHub starsUsed in 3 repos~557 tokens
    Productivity & AutomationAuto-check passed
  • Zapier SDK

    zapier/sdk

    Official

    Zapier SDK for TypeScript. An agent skill from zapier/sdk.

    262 GitHub stars~2.9k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Zapier Demo

    zapier/zapier-mcp

    Official

    Walk a new user through setting up their first Zapier action and running it live — the smallest possible win.

    428 GitHub stars~2.7k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed
  • Just

    disler/bowser

    Use just to save and run project-specific commands. An agent skill from disler/bowser.

    265 GitHub stars~792 tokensUpdated 7 mo ago
    Productivity & AutomationAuto-check: notes
  • Zapier Status

    zapier/zapier-mcp

    Official

    Check the health of your Zapier MCP setup. An agent skill from zapier/zapier-mcp.

    428 GitHub stars~1.8k tokensUpdated 2 mo ago
    Productivity & AutomationAuto-check passed

More from PackmindHub/packmind

All 35 skills in this repo
  • Michel CLI Demo Recorder

    PackmindHub/packmind

    Produce proof-of-execution demos of the Packmind CLI (packmind-cli) as terminal-styled images (colors and formatting preserved exactly), for embedding in a GitHub PR.

    317 GitHub stars~3.4k tokensUpdated yesterday
    Auto-check passed
  • Michel UI Demo Recorder

    PackmindHub/packmind

    Record polished UI demo videos and screenshots of a running web app using Playwright MCP — for client deliverables, release notes, feature walkthroughs, or bug repros.

    317 GitHub stars~6.4k tokensUpdated yesterday
    Auto-check passed
  • Packmind Create Skill

    PackmindHub/packmind

    Guide for creating effective skills. An agent skill from PackmindHub/packmind.

    317 GitHub stars~3.5k tokensUpdated yesterday
    Auto-check: notes
  • Doc Audit

    PackmindHub/packmind

    Audit Packmind end-user documentation (apps/doc/) for broken links, outdated CLI references, non-existent concepts, misleading information, and missing coverage.

    317 GitHub stars~2.4k tokensUpdated yesterday
    Auto-check passed
  • Feature Sprint

    PackmindHub/packmind

    Execute the implementation plan produced by /feature-spec. An agent skill from PackmindHub/packmind.

    317 GitHub stars~1.9k tokensUpdated yesterday
    Auto-check passed
  • Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping…

    317 GitHub stars~2.7k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Packmind Create Command

What does Packmind Create Command do?

Guide for creating reusable commands via the Packmind CLI. An agent skill from PackmindHub/packmind. Packmind Create Command is an agent skill from PackmindHub/packmind. Guide for creating reusable commands via the Packmind CLI.

When should I use Packmind Create Command?

Packmind Create Command fits situations like: tasks that involve Workflow automation.

How do I install Packmind Create Command in Claude Code?

Run `npx skills add PackmindHub/packmind --skill packmind-create-command -a claude-code`. Or copy the skill folder (.gitlab/duo/skills/packmind-create-command in PackmindHub/packmind) into .claude/skills/packmind-create-command in your project. Claude Code loads it when a task matches its description.

How do I install Packmind Create Command in Codex?

Run `npx skills add PackmindHub/packmind --skill packmind-create-command -a codex`. Or copy the skill folder (.gitlab/duo/skills/packmind-create-command in PackmindHub/packmind) into .agents/skills/packmind-create-command in your project. Codex loads it when a task matches its description.

Can I use Packmind Create Command in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PackmindHub/packmind --skill packmind-create-command -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/packmind-create-command, .gemini/skills/packmind-create-command, .github/skills/packmind-create-command and .opencode/skills/packmind-create-command in your project.

What does Packmind Create Command need to run?

Going by SKILL.md and its folder, Packmind Create Command needs the command-line tools its instructions call (npm). Our summary lists: Node.js.

Does Packmind Create Command access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Packmind Create Command safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Packmind Create Command use?

Packmind Create Command is published under the Apache-2.0 licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Packmind Create Command use?

About 3k tokens (SKILL.md is roughly 12k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Packmind Create Command?

Skills that share tags, products or a category with Packmind Create Command: Robocorp Automation (robocorp/robocorp, 653 stars), Connect Apps with Composio (ComposioHQ/awesome-claude-skills, 77k stars), Zapier SDK (zapier/sdk, 262 stars) and Zapier Demo (zapier/zapier-mcp, 428 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Packmind Create Command?

PackmindHub (a GitHub organization) maintains it in PackmindHub/packmind, which has 317 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 6, 2026.

Source: PackmindHub/packmind on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.