Skip to content

Commit 426335d

Browse files
kstabachclaude
andcommitted
feat: install mygit framework for LLM collaboration
- Add issue templates (feature, bug, llm task) - Add PR template with LLM metadata section - Add GitHub Actions workflows (CI, issue automation, PR automation) - Create mygit config file - Add agent instruction files (AGENTS.md, CLAUDE.md) - Add README with LLM navigation section - Add label creation script This enables LLM agents to work autonomously on this project. 🤖 Generated with Claude Code Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
0 parents  commit 426335d

File tree

13 files changed

+792
-0
lines changed

13 files changed

+792
-0
lines changed
Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: Bug Report
2+
description: Report a bug or unexpected behavior
3+
title: "[Bug]: "
4+
labels: ["type: bug"]
5+
body:
6+
- type: textarea
7+
id: description
8+
attributes:
9+
label: Bug Description
10+
description: What's wrong?
11+
placeholder: "Installation script fails when run on existing repository..."
12+
validations:
13+
required: true
14+
15+
- type: textarea
16+
id: steps
17+
attributes:
18+
label: Steps to Reproduce
19+
description: How can we reproduce this?
20+
placeholder: |
21+
1. Clone a repository with existing .github/ directory
22+
2. Run ./install.sh
23+
3. See error: "Directory already exists"
24+
validations:
25+
required: true
26+
27+
- type: textarea
28+
id: expected
29+
attributes:
30+
label: Expected Behavior
31+
description: What should happen?
32+
placeholder: "Script should detect existing directory and ask to merge or skip"
33+
validations:
34+
required: true
35+
36+
- type: textarea
37+
id: actual
38+
attributes:
39+
label: Actual Behavior
40+
description: What actually happens?
41+
placeholder: "Script fails with error and exits"
42+
validations:
43+
required: true
44+
45+
- type: textarea
46+
id: logs
47+
attributes:
48+
label: Error Logs
49+
description: Paste any error messages
50+
render: shell
51+
placeholder: |
52+
Error: .github/ISSUE_TEMPLATE already exists
53+
Use --force to overwrite
54+
55+
- type: textarea
56+
id: environment
57+
attributes:
58+
label: Environment
59+
description: OS, shell, version, etc.
60+
placeholder: |
61+
- OS: macOS 14.2
62+
- Shell: zsh 5.9
63+
- GitHub CLI: 2.40.0

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: true
2+
contact_links:
3+
- name: Documentation
4+
url: https://github.com/kstabach/mygit/blob/main/FRAMEWORK.md
5+
about: Read the complete framework design documentation
6+
- name: Setup Guide
7+
url: https://github.com/kstabach/mygit/blob/main/SETUP.md
8+
about: Step-by-step installation instructions
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
name: Feature Request
2+
description: Suggest a new feature or enhancement
3+
title: "[Feature]: "
4+
labels: ["type: feature"]
5+
body:
6+
- type: input
7+
id: title
8+
attributes:
9+
label: Feature Title
10+
description: Short description of the feature
11+
placeholder: "Add one-command installation script"
12+
validations:
13+
required: true
14+
15+
- type: textarea
16+
id: problem
17+
attributes:
18+
label: Problem Statement
19+
description: What problem does this solve?
20+
placeholder: "Users need to manually copy multiple files to install the framework. This is time-consuming and error-prone..."
21+
validations:
22+
required: true
23+
24+
- type: textarea
25+
id: solution
26+
attributes:
27+
label: Proposed Solution
28+
description: How should we solve it?
29+
placeholder: "Create install.sh that copies all templates, creates labels, and configures the repository with a single command..."
30+
validations:
31+
required: true
32+
33+
- type: dropdown
34+
id: priority
35+
attributes:
36+
label: Priority
37+
options:
38+
- critical
39+
- high
40+
- medium
41+
- low
42+
default: 1
43+
validations:
44+
required: true
45+
46+
- type: dropdown
47+
id: phase
48+
attributes:
49+
label: Implementation Phase
50+
description: Which phase does this belong to?
51+
options:
52+
- "Phase 1: Templates"
53+
- "Phase 2: Labels"
54+
- "Phase 3: Project Board"
55+
- "Phase 4: GitHub Actions"
56+
- "Phase 5: Documentation"
57+
- "Phase 6: Setup Scripts"
58+
- "Future"
59+
default: 6
60+
61+
- type: checkboxes
62+
id: acceptance
63+
attributes:
64+
label: Acceptance Criteria
65+
description: What must be true for this to be complete?
66+
options:
67+
- label: Feature works as described
68+
- label: Tests added and passing (if applicable)
69+
- label: Documentation updated
70+
- label: Works on test repository
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
name: LLM Task
2+
description: Task optimized for LLM agents to complete autonomously
3+
title: "[LLM]: "
4+
labels: ["llm-friendly"]
5+
body:
6+
- type: textarea
7+
id: task
8+
attributes:
9+
label: Task Description
10+
description: What should the LLM do?
11+
placeholder: "Create GitHub Actions workflow for CI/CD that runs tests on all PRs"
12+
validations:
13+
required: true
14+
15+
- type: textarea
16+
id: context
17+
attributes:
18+
label: Context / Background
19+
description: Any background information the LLM needs
20+
placeholder: |
21+
We need automated testing for all pull requests. The workflow should:
22+
- Run on push to main and all PRs
23+
- Set up the appropriate language environment
24+
- Install dependencies
25+
- Run tests with coverage
26+
- Report results as PR comments
27+
28+
- type: checkboxes
29+
id: acceptance
30+
attributes:
31+
label: Acceptance Criteria
32+
description: Success criteria - what must be true when complete?
33+
options:
34+
- label: Functionality works as described
35+
- label: Tests added and passing (if applicable)
36+
- label: Documentation updated (if needed)
37+
- label: No breaking changes introduced
38+
- label: Follows project conventions
39+
40+
- type: textarea
41+
id: dependencies
42+
attributes:
43+
label: Dependencies
44+
description: Other issues that must be done first
45+
placeholder: "Depends on #1, #2"
46+
47+
- type: textarea
48+
id: files
49+
attributes:
50+
label: Files to Modify/Create
51+
description: Specific files that will be changed (if known)
52+
placeholder: |
53+
Create:
54+
- .github/workflows/ci-cd.yml
55+
Modify:
56+
- README.md (add CI badge)
57+
58+
- type: checkboxes
59+
id: metadata
60+
attributes:
61+
label: LLM Metadata
62+
options:
63+
- label: Can be done autonomously (no human intervention needed)
64+
- label: Requires approval before merge
65+
- label: Breaking change or major feature
66+
67+
- type: dropdown
68+
id: complexity
69+
attributes:
70+
label: Estimated Complexity
71+
description: How complex is this task?
72+
options:
73+
- trivial (< 30 min)
74+
- simple (30 min - 1 hour)
75+
- moderate (1-2 hours)
76+
- complex (2-4 hours)
77+
- very complex (> 4 hours)
78+
default: 1

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
## Description
2+
3+
What changed and why?
4+
5+
## Related Issues
6+
7+
Closes #
8+
9+
## Type of Change
10+
11+
- [ ] Bug fix (non-breaking)
12+
- [ ] New feature (non-breaking)
13+
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
14+
- [ ] Documentation update
15+
- [ ] Refactoring (no functional changes)
16+
17+
## Testing
18+
19+
- [ ] Tests added for new functionality
20+
- [ ] All tests passing locally
21+
- [ ] Manual testing completed
22+
- [ ] Edge cases considered
23+
24+
## Documentation
25+
26+
- [ ] README.md updated (if needed)
27+
- [ ] FRAMEWORK.md updated (if design changed)
28+
- [ ] SETUP.md updated (if installation changed)
29+
- [ ] Code comments added (if complex logic)
30+
31+
## LLM Metadata
32+
33+
*Fill this section if this PR was created by an LLM agent*
34+
35+
- **Agent**: [Claude Sonnet 4.5 / GPT-4 / other]
36+
- **Confidence**: [High / Medium / Low]
37+
- **Acceptance Criteria Met**: [ ] All [ ] Partial
38+
- **Autonomous**: [Yes / No - required human guidance]
39+
- **Testing Coverage**: [%]
40+
41+
## Checklist
42+
43+
- [ ] My code follows the project's style guidelines
44+
- [ ] I have performed a self-review of my code
45+
- [ ] I have commented my code, particularly in hard-to-understand areas
46+
- [ ] My changes generate no new warnings
47+
- [ ] New and existing tests pass locally

.github/workflows/ci.yml

Lines changed: 79 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,79 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main]
6+
pull_request:
7+
branches: [main]
8+
9+
jobs:
10+
validate:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
15+
- name: Validate YAML files
16+
run: |
17+
# Check issue templates are valid YAML
18+
for file in .github/ISSUE_TEMPLATE/*.yml; do
19+
if [ -f "$file" ]; then
20+
echo "Validating $file"
21+
python3 -c "import yaml; yaml.safe_load(open('$file'))"
22+
fi
23+
done
24+
25+
- name: Validate Markdown files
26+
run: |
27+
# Check all markdown files exist and are readable
28+
for file in *.md docs/*.md; do
29+
if [ -f "$file" ]; then
30+
echo "Checking $file"
31+
cat "$file" > /dev/null
32+
fi
33+
done
34+
35+
- name: Check scripts are executable
36+
run: |
37+
# Verify scripts directory structure
38+
if [ -d "scripts" ]; then
39+
echo "Scripts directory exists"
40+
ls -la scripts/ || true
41+
else
42+
echo "Scripts directory will be created in future PR"
43+
fi
44+
45+
- name: Validate framework structure
46+
run: |
47+
echo "Checking framework structure..."
48+
49+
# Required files
50+
required_files=(
51+
"README.md"
52+
"AGENTS.md"
53+
".github/ISSUE_TEMPLATE/feature_request.yml"
54+
".github/ISSUE_TEMPLATE/bug_report.yml"
55+
".github/ISSUE_TEMPLATE/llm_task.yml"
56+
".github/PULL_REQUEST_TEMPLATE.md"
57+
)
58+
59+
for file in "${required_files[@]}"; do
60+
if [ ! -f "$file" ]; then
61+
echo "❌ Missing required file: $file"
62+
exit 1
63+
else
64+
echo "✅ Found: $file"
65+
fi
66+
done
67+
68+
echo "All required files present!"
69+
70+
lint-markdown:
71+
runs-on: ubuntu-latest
72+
steps:
73+
- uses: actions/checkout@v4
74+
75+
- name: Lint Markdown files
76+
uses: DavidAnson/markdownlint-cli2-action@v16
77+
with:
78+
globs: '*.md'
79+
continue-on-error: true # Don't fail on linting for now

0 commit comments

Comments
 (0)