Initial commit
This commit is contained in:
14
.claude-plugin/plugin.json
Normal file
14
.claude-plugin/plugin.json
Normal file
@@ -0,0 +1,14 @@
|
||||
{
|
||||
"name": "issuify",
|
||||
"description": "Create GitHub issues and pull requests with structured formatting using the GitHub Copilot MCP server",
|
||||
"version": "1.0.0",
|
||||
"author": {
|
||||
"name": "Headlands"
|
||||
},
|
||||
"commands": [
|
||||
"./commands"
|
||||
],
|
||||
"mcp": [
|
||||
"./mcp"
|
||||
]
|
||||
}
|
||||
3
README.md
Normal file
3
README.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# issuify
|
||||
|
||||
Create GitHub issues and pull requests with structured formatting using the GitHub Copilot MCP server
|
||||
58
commands/do.md
Normal file
58
commands/do.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# Issuify
|
||||
|
||||
**IMPORTANT: Before proceeding, check if the GITHUB_PERSONAL_ACCESS_TOKEN environment variable is set.**
|
||||
|
||||
If `GITHUB_PERSONAL_ACCESS_TOKEN` is not set in the environment, STOP immediately and output:
|
||||
|
||||
```
|
||||
GitHub Personal Access Token not found.
|
||||
|
||||
The issuify plugin requires a GitHub PAT because the GitHub MCP server doesn't support OAuth.
|
||||
|
||||
Setup instructions:
|
||||
|
||||
1. Create a GitHub PAT at https://github.com/settings/tokens
|
||||
Required scope: repo
|
||||
|
||||
2. Set the environment variable:
|
||||
export GITHUB_PERSONAL_ACCESS_TOKEN="your_token_here"
|
||||
|
||||
3. Add to your shell profile to persist across sessions:
|
||||
echo 'export GITHUB_PERSONAL_ACCESS_TOKEN="your_token_here"' >> ~/.zshrc
|
||||
|
||||
4. Restart Claude Code after setting the variable
|
||||
|
||||
Then run /issuify again.
|
||||
```
|
||||
|
||||
If the token IS set, proceed with the normal workflow:
|
||||
|
||||
Review all changed files since upstream branch. Include work we're aware of. Ask about unexpected changes.
|
||||
|
||||
Use the **GitHub Copilot MCP server** tools to create both the issue and PR:
|
||||
- `mcp__github__create_issue` - Create the GitHub issue
|
||||
- `mcp__github__create_pull_request` - Create the pull request
|
||||
|
||||
## Issue (what & why)
|
||||
Write casual, precise language. No fluff. Focus on bottom line.
|
||||
|
||||
- **Problem**: What's broken or missing (1-2 sentences max)
|
||||
- **Value**: Why it matters (1 sentence)
|
||||
- **Solution**: What we're doing (2-3 bullets, not exhaustive)
|
||||
|
||||
Target 3-5 sentences total. Skip obvious details.
|
||||
|
||||
## PR (how)
|
||||
Write casual, precise language. No frilly technical jargon.
|
||||
|
||||
- **Summary**: What changed (2-3 bullets max, technical but simple)
|
||||
- **Why**: How it solves the issue (1 sentence linking back)
|
||||
- **Test**: What to check (2-3 bullets, just key things)
|
||||
|
||||
Target 4-6 sentences total. Cut anything that doesn't add value.
|
||||
|
||||
## Style
|
||||
- Casual but exact (like talking to a teammate)
|
||||
- No fake technical voice, no marketing speak
|
||||
- Skip words like "comprehensive", "robust", "ensure", "carefully"
|
||||
- Bottom line first, skip exhaustive details
|
||||
11
mcp/.mcp.json
Normal file
11
mcp/.mcp.json
Normal file
@@ -0,0 +1,11 @@
|
||||
{
|
||||
"mcpServers": {
|
||||
"github": {
|
||||
"type": "http",
|
||||
"url": "https://api.githubcopilot.com/mcp/",
|
||||
"env": {
|
||||
"GITHUB_PERSONAL_ACCESS_TOKEN": "${GITHUB_PERSONAL_ACCESS_TOKEN}"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
49
plugin.lock.json
Normal file
49
plugin.lock.json
Normal file
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"$schema": "internal://schemas/plugin.lock.v1.json",
|
||||
"pluginId": "gh:headlands-org/claude-marketplace:issuify",
|
||||
"normalized": {
|
||||
"repo": null,
|
||||
"ref": "refs/tags/v20251128.0",
|
||||
"commit": "61dccfe5b2d68d6f9a36a62913facf88d968d3f6",
|
||||
"treeHash": "c76c3b371e2f35ffce8921c9413a2e456c628d7942923a78ba3a7dbf46a16dc6",
|
||||
"generatedAt": "2025-11-28T10:17:23.500307Z",
|
||||
"toolVersion": "publish_plugins.py@0.2.0"
|
||||
},
|
||||
"origin": {
|
||||
"remote": "git@github.com:zhongweili/42plugin-data.git",
|
||||
"branch": "master",
|
||||
"commit": "aa1497ed0949fd50e99e70d6324a29c5b34f9390",
|
||||
"repoRoot": "/Users/zhongweili/projects/openmind/42plugin-data"
|
||||
},
|
||||
"manifest": {
|
||||
"name": "issuify",
|
||||
"description": "Create GitHub issues and pull requests with structured formatting using the GitHub Copilot MCP server",
|
||||
"version": "1.0.0"
|
||||
},
|
||||
"content": {
|
||||
"files": [
|
||||
{
|
||||
"path": "README.md",
|
||||
"sha256": "590fe3c70caa6c73aa1e7ff499660874c54be648aed2234dd51c27e13f505ca1"
|
||||
},
|
||||
{
|
||||
"path": "mcp/.mcp.json",
|
||||
"sha256": "94385a1048a507e015329fbc3907afb0159941eac9e8b435d0ee12af975e4c91"
|
||||
},
|
||||
{
|
||||
"path": ".claude-plugin/plugin.json",
|
||||
"sha256": "9eab7e44f57555b7471608d17e7fec0ed3552184965a63fece11471b5a164591"
|
||||
},
|
||||
{
|
||||
"path": "commands/do.md",
|
||||
"sha256": "03fcbd4cb5b5a4e93365014ff165ed7ee17833e322c6b7ed64c34b68c945e7ac"
|
||||
}
|
||||
],
|
||||
"dirSha256": "c76c3b371e2f35ffce8921c9413a2e456c628d7942923a78ba3a7dbf46a16dc6"
|
||||
},
|
||||
"security": {
|
||||
"scannedAt": null,
|
||||
"scannerVersion": null,
|
||||
"flags": []
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user