Skip to content

feat(plugins): add GitHub integration plugin#207

Open
patkaryash wants to merge 1 commit into
OpenScanAI:masterfrom
patkaryash:feat/github-integration-plugin
Open

feat(plugins): add GitHub integration plugin#207
patkaryash wants to merge 1 commit into
OpenScanAI:masterfrom
patkaryash:feat/github-integration-plugin

Conversation

@patkaryash

Copy link
Copy Markdown

Summary

This PR introduces a new GitHub Integration plugin for Paperclip.

The plugin listens for Paperclip issue creation events and automatically creates the corresponding issue in a configured GitHub repository. It also records synchronization metadata to prevent losing the relationship between Paperclip and GitHub issues.


Thinking Path

  • Paperclip supports integrations through its plugin system.
  • Many teams track work in GitHub alongside Paperclip.
  • Previously, creating a Paperclip issue required manually creating the corresponding GitHub issue.
  • This duplicated work and increased the chance of the two systems becoming inconsistent.
  • This PR introduces a dedicated GitHub integration plugin that automatically synchronizes new Paperclip issues to GitHub.
  • The result is a cleaner workflow and a foundation for future bidirectional synchronization.

What Changed

  • Added a new @paperclipai/plugin-github-integration plugin package.
  • Added a plugin manifest describing capabilities and configuration.
  • Registered a worker that subscribes to issue.created events.
  • Implemented GitHub Issue creation using the GitHub REST API.
  • Added configurable repository owner, repository name, and authentication settings.
  • Stored synchronization metadata using the plugin state API.
  • Logged synchronization events through the Paperclip activity API.
  • Added package configuration, TypeScript configuration, and plugin documentation.

Verification

  • Built and loaded the plugin successfully.
  • Verified plugin startup and event subscription.
  • Confirmed issue.created events are received.
  • Verified GitHub issues are created successfully in the configured repository.
  • Confirmed synchronization state is stored after successful issue creation.
  • Verified activity entries are written for successful synchronizations.

Risks

  • Low risk.
  • The plugin only acts on issue.created events and does not modify existing GitHub issues.
  • Successful operation depends on a valid GitHub Personal Access Token and repository configuration.
  • This PR establishes one-way synchronization (Paperclip → GitHub). Bidirectional synchronization is outside the scope of this change.

Model Used

  • Hermes CLI (Kimi Coding) for implementation assistance.
  • ChatGPT GPT-5.5 for architecture review and PR preparation.

Checklist

  • I have included a thinking path that traces from project context to this change
  • I have specified the model used
  • I have checked ROADMAP.md and confirmed this work does not duplicate planned core work
  • I have run tests locally
  • I have added or updated documentation where appropriate
  • I have considered and documented the risks

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant