customize-contribute-back

Contribute a user's AIWG customization back upstream as a PR — reviews for general applicability, creates branch, opens PR

104 stars

Best use case

customize-contribute-back is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Contribute a user's AIWG customization back upstream as a PR — reviews for general applicability, creates branch, opens PR

Teams using customize-contribute-back should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/customize-contribute-back/SKILL.md --create-dirs "https://raw.githubusercontent.com/jmagly/aiwg/main/agentic/code/addons/aiwg-utils/skills/customize-contribute-back/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/customize-contribute-back/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How customize-contribute-back Compares

Feature / Agentcustomize-contribute-backStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Contribute a user's AIWG customization back upstream as a PR — reviews for general applicability, creates branch, opens PR

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Customize Contribute Back

You help users contribute a customization from their fork back to the upstream AIWG repo. You first assess whether the customization is generally useful (not just personal), then create a feature branch, commit, and open a PR.

## Triggers

- "PR this back to AIWG"
- "contribute this upstream"
- "submit this agent to the main repo"
- "open a PR to AIWG"
- "share this with the AIWG project"
- "could this be useful for everyone?"

## Trigger Patterns Reference

| Pattern | Example | Action |
|---------|---------|--------|
| Explicit PR | "PR this back to AIWG" | Assess → branch → PR |
| Contribution question | "could this be useful for everyone?" | Assess only, ask to proceed |
| Submit | "submit this skill upstream" | Assess → branch → PR |

## Behavior

When triggered:

1. **Identify what to contribute** — ask if not clear:
   > "Which customization would you like to contribute? (e.g., the domain-specialist agent, the my-conventions rule)"

2. **Assess for general applicability**:
   - Review the file(s) in question
   - Ask: is this useful to anyone installing AIWG, or is it specific to this user's context?
   - **Personal signals** (do NOT contribute): references to the user's name, team, specific internal tools, personal preferences ("always call me X"), org-specific vocabulary
   - **General signals** (good candidate): adds new capability, improves an existing agent/skill for a common use case, fixes a gap in the framework

   If personal: decline gracefully:
   > "This looks specific to you — it references [X]. That's perfect as a private customization but wouldn't be a fit for the main repo. Keep it in your fork."

   If general: confirm with user before proceeding:
   > "This looks generally useful. Want me to open a PR to jmagly/aiwg?"

3. **Create feature branch**:
   ```bash
   git -C <edgePath> checkout -b feat/contribute-<name>
   git -C <edgePath> add <file(s)>
   git -C <edgePath> commit -m "<conventional-commit-message>"
   git -C <edgePath> push origin feat/contribute-<name>
   ```

   Conventional commit format: `feat(<scope>): <description>` — scope is the addon/framework area (e.g., `aiwg-utils`, `sdlc`, `skills`).

4. **Open PR** via `gh`:
   ```bash
   gh pr create \
     --repo jmagly/aiwg \
     --head <user>:feat/contribute-<name> \
     --title "<conventional commit title>" \
     --body "<description>"
   ```

   PR body template:
   ```markdown
   ## Summary
   [What this adds/changes and why it's useful for AIWG users generally]

   ## Changes
   - [File: what it does]

   ## Testing
   - Deployed locally via `aiwg use all`
   - [Any specific testing done]
   ```

5. **Report**:
   ```
   PR opened: https://github.com/jmagly/aiwg/pull/NNN
   Title: feat(aiwg-utils): [title]
   Branch: feat/contribute-<name>

   The PR is ready for review. You can continue customizing on main — this branch is separate.
   ```

## Examples

### Example 1: Generally useful agent

**User**: "I built a terraform-specialist agent — could this be useful for others?"

**Assessment**: Not user-specific, generally useful for infra teams → confirm

**Action**: Create branch → commit `feat(aiwg-utils): add terraform-specialist agent` → push → `gh pr create`

**Response**: "PR opened at jmagly/aiwg. The Terraform specialist agent looks like a solid contribution."

### Example 2: Personal rule

**User**: "PR my my-conventions rule back to AIWG"

**Assessment**: File contains "always know I'm Joe from Acme Corp" — personal

**Response**: "This rule references you by name and mentions Acme Corp — it's a perfect personal customization but not a fit for the main repo where it wouldn't apply to other users. It stays in your fork."

### Example 3: Generally useful skill improvement

**User**: "I improved the aiwg-sync skill to handle more edge cases — contribute it?"

**Assessment**: Improvement to existing skill, generally applicable → confirm

**Action**: Create branch → commit → PR

## Clarification Prompts

- "Which file(s) should I include in the PR?"
- "This looks generally useful — want me to open a PR to jmagly/aiwg?"
- "The assessment: [reason]. Should I proceed with the PR anyway?"

## References

- @$AIWG_ROOT/CONTRIBUTING.md — Contribution guidelines
- @$AIWG_ROOT/docs/customization/fork-workflow.md — Fork workflow docs

Related Skills

customize-upstream-sync

104
from jmagly/aiwg

Pull the latest upstream AIWG updates into the user's fork and rebuild — preserves user customizations

customize-status

104
from jmagly/aiwg

Show current AIWG customization status — mode, source path, what you've customized vs upstream

customize-setup

104
from jmagly/aiwg

Set up personal AIWG customization mode from a local clone or fork — makes your clone the live global AIWG instance so edits go live immediately

customize-rebuild

104
from jmagly/aiwg

Rebuild and redeploy AIWG from local customization source — makes recent edits live

rollback-workspace

104
from jmagly/aiwg

Restore the .aiwg/ directory from a migrate-workspace backup, listing available backups when none is specified

Codex

feedback

104
from jmagly/aiwg

Submit a bug report, feature request, or feedback to the AIWG GitHub repository — prefills system context automatically

Codex

execute-feedback

104
from jmagly/aiwg

Execute tests on generated code and iterate until passing

Codex

contribute-start

104
from jmagly/aiwg

Initialize an AIWG contribution workflow by creating a feature branch, configuring DCO, and linking a tracking issue

Codex

citation-backfill

104
from jmagly/aiwg

Rebuild bidirectional citation edges across the research corpus. Scans outgoing citation tables, computes the inverse map, and rewrites all incoming tables to match. Fixes one-directional citation graphs after batch inductions.

Codex

aiwg-orchestrate

104
from jmagly/aiwg

Route structured artifact work to AIWG workflows via MCP with zero parent context cost

venv-manager

104
from jmagly/aiwg

Create, manage, and validate Python virtual environments. Use for project isolation and dependency management.

pytest-runner

104
from jmagly/aiwg

Execute Python tests with pytest, supporting fixtures, markers, coverage, and parallel execution. Use for Python test automation.