v0.1
Configuration
gripe.yaml schema format, field types, and automated policy options.
Schema File
gripe reads from gripe.yaml in your repository root. This file defines the structure of issues you can submit.
repo: agent-clis/gripe
schema: bug-report
title_template: "[{{tool}}] {{summary}}"
fields:
- name: tool
type: enum
required: true
values: [vim, emacs, vscode, neovim]
- name: summary
type: string
required: true
- name: severity
type: enum
values: [low, medium, high, critical]
default: medium
- name: steps
type: text
required: false
Field Types
| Type | Description | Example |
|---|---|---|
string |
Single-line text | summary: "cursor bug" |
text |
Multi-line text | Steps to reproduce |
enum |
One of a set of values | severity: high |
boolean |
True or false | blocking: true |
number |
Numeric value | affected_users: 5 |
Field Properties
| Property | Type | Description |
|---|---|---|
name |
string | Field identifier (required) |
type |
string | Field type (required) |
required |
boolean | Whether the field must be provided |
default |
any | Default value if not provided |
values |
array | Valid values for enum fields |
label |
string | Display label for interactive prompts |
Title Template
The title_template field uses double-brace syntax to interpolate field values:
title_template: "[{{tool}}] {{summary}}"
With tool=vim and summary="cursor jumps", this produces: [vim] cursor jumps
Automated Policy
Set default labels, assignees, and milestones:
policy:
labels:
- bug
- "tool:{{tool}}"
assignees:
- maintainer-bot
milestone: v0.2
Labels support template interpolation, so tool:{{tool}} becomes tool:vim when the tool field is "vim".
Dry Run
Preview what would be submitted without creating an issue:
gripe dry-run tool=vim summary="cursor jumps"
This outputs the full issue payload (title, body, labels, assignees) so you can verify before submitting.
Multiple Schemas
You can define multiple schemas in gripe.yaml:
schemas:
bug-report:
title_template: "[{{tool}}] {{summary}}"
fields: [...]
feature-request:
title_template: "[feature] {{summary}}"
fields: [...]
Select a schema when submitting:
gripe submit --schema feature-request summary="add dark mode"