Skip to content

Proposal: research GitHub App auth vs clawgenti bot user for automation #82

Description

@rubambiza

Goal

Time-boxed investigation (not implementation) into having the automation programs act as a GitHub App rather than as the clawgenti bot user account.

Context

The dam-agents team (behind the DAM platform referenced in the RepoMan spec) has built a DAM Application GitHub App that acts with granted privileges, a useful precedent for the pattern we would want. GitHub Apps are not yet enabled on rossoctl/automation; enabling them (and evaluating whether the DAM Application or a purpose-built app is the right fit) is part of this investigation.

Questions to answer

  • What can a GitHub App do that the bot user does (open PRs/issues, comment, label, fork, push to a fork), and what are the gaps (for example forking behavior, cross-org access, DCO sign-off, commit authorship/attribution)?
  • Installation-token vs bot-PAT auth model: scope granularity, rotation, per-repo installation, and how that maps to RepoMan's per-repo {owner, name} model and per-program capability checks (Phase 3).
  • What does the dam-agents DAM Application do, and could we reuse its pattern or app rather than building our own?
  • Migration cost and blast radius for the existing scanner/fixer/reviewer programs.

Deliverable

A short recommendation doc (app vs bot user, or hybrid), with tradeoffs. No code committed from this issue. May graduate into its own epic.

Relationship to RepoMan

Cross-cutting infrastructure. Deliberately filed outside the RepoMan epic (#72) so it does not gate v0.1.0.

Assisted-By: Claude Code

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions