Skip to content

Experiment: re-platform opendatahub-io/rfe-creator as a fullsend custom agent #32

Open

Description

@ralphbean

What

opendatahub-io/rfe-creator is a set of Claude Code skills for creating, reviewing, and submitting RFEs (Requests for Enhancement) to Jira. The pipeline is: create → review (rubric scoring + technical feasibility + auto-revision) → submit to Jira. It supports batch processing, multi-round review cycles, and headless/CI mode.

The question is whether this can be re-platformed on top of fullsend as a custom agent setup, similar to how konflux-ci/refinement runs explore → refine → critique as fullsend agents with Jira integration.

Why this is interesting

  • rfe-creator is already well-factored: the LLM work lives in sub-agent prompt files, and the heavy lifting (Jira CRUD, frontmatter management, state persistence, batch orchestration) lives in ~36 Python scripts that are largely framework-agnostic.
  • The refinement repo already demonstrates the pattern for Jira-integrated fullsend agents with structured JSON output, pre/post scripts, and review loops.
  • If it works, it validates that fullsend's custom agent model can absorb non-trivial existing Claude Code skill projects.

What needs to happen

Upstream patches to rfe-creator (propose before re-platforming)

Three small, non-breaking patches that make the pieces more reusable:

  1. Configurable Jira project + issue type. submit.py and split_submit.py hardcode "RHAIRFE" and "Feature Request". Add JIRA_PROJECT (required, no default — fail if unset, same as JIRA_SERVER/JIRA_USER/JIRA_TOKEN via require_env()) and JIRA_ISSUE_TYPE (default "Feature Request"). Also replace the startswith("RHAIRFE-") heuristic for detecting existing-vs-new issues with a general "looks like a Jira key" regex (^[A-Z]+-\d+$) since the local convention is always RFE-NNN.

  2. Env var inputs for sub-agent prompts. The four prompts under .claude/skills/rfe.review/prompts/ use {ID}, {ASSESS_PATH}, etc. as inline placeholders substituted by the Claude Code orchestrator. Change these to read from environment variables ($RFE_ID, $ASSESS_PATH), which works in both Claude Code (set env before Agent launch) and fullsend (native env var injection).

  3. --no-default-filter on jql_query.py. The script appends rfe-creator-specific label exclusions to every JQL query. Add a flag to pass JQL through unmodified.

Re-platform work

  • Map the rfe-creator pipeline to fullsend agents. Likely 3 agents: create, review, critique — mirroring refinement's explore/refine/critique structure.
  • /rfe.submit is deterministic Python (no LLM), so it becomes a post-script.
  • /rfe.speedrun and /rfe.auto-fix orchestration becomes a GitHub Actions workflow chaining agent dispatches.
  • YAML frontmatter ↔ JSON translation happens in pre/post scripts.

Open questions

  • The rfe-creator review pipeline has 4 sub-agents (fetch, assess, feasibility, revise) run in parallel waves. Does each become its own fullsend agent, or do some collapse into pre/post scripts?
  • The assess-rfe rubric is bootstrapped from a separate repo at runtime. Vendored skill, pre-script fetch, or something else?
  • Interactive mode (/rfe.create asks clarifying questions) doesn't map to fullsend's headless model. Headless-only acceptable?

Activity

  1. fullsend-ai-triage commented on Jun 24, 2026

    @fullsend-ai-triage

    🤖 Finished Triage · ✅ Success · Started 5:03 PM UTC · Completed 5:06 PM UTC
    Commit: eb4aef1 · View workflow run →

  2. fullsend-ai-triage commented on Jun 24, 2026

    @fullsend-ai-triage

    Triage Summary

    This experiment is well-scoped and ready for implementation.

    What: Re-platform opendatahub-io/rfe-creator as fullsend custom agents, following the pattern established by konflux-ci/refinement.

    Phased approach:

    1. Upstream patches — 3 small PRs to rfe-creator: configurable Jira project/issue type via env vars, env var inputs for sub-agent prompts, and a --no-default-filter flag on jql_query.py.
    2. Agent mapping — 3 fullsend agents (create, review, critique), with /rfe.submit as a post-script and orchestration as a GitHub Actions workflow.

    Design decisions to resolve during implementation:

    • Whether the 4 review sub-agents (fetch, assess, feasibility, revise) each become fullsend agents or collapse into pre/post scripts
    • How to source the assess-rfe rubric (vendored skill vs. pre-script fetch)
    • Headless-only mode acceptability (interactive /rfe.create doesn't map to fullsend's model)

    Proposed test case:

    End-to-end: configure agents against a test Jira project,
    run create → review → critique pipeline, execute submit
    post-script. Verify Jira ticket created with correct project
    key, issue type, and content. Also verify batch processing
    works through the GitHub Actions workflow.
    

    No duplicates or blocking PRs were found. The 9 open PRs in rfe-creator are feature work and bug fixes unrelated to the reusability patches described here.


    Labels: This is a new experiment/feature proposal for re-platforming an external project as fullsend agents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions