Skip to content

feat: add GitHub Copilot CLI host adapter#26

Closed
konard wants to merge 2 commits into
archcore-ai:devfrom
konard:issue-24-1f2c5a6a3cbb
Closed

feat: add GitHub Copilot CLI host adapter#26
konard wants to merge 2 commits into
archcore-ai:devfrom
konard:issue-24-1f2c5a6a3cbb

Conversation

@konard

@konard konard commented Jul 23, 2026

Copy link
Copy Markdown

Summary

  • add the native GitHub Copilot CLI .plugin/plugin.json manifest and camelCase hooks configuration
  • route all Copilot hooks through the shared Archcore scripts from the user project root
  • normalize captured native file-tool paths and archcore-* MCP tool names without changing the behavior pinned for existing hosts
  • add real redacted Copilot CLI 1.0.73 payload fixtures, structural/unit regressions, release documentation, and the four-manifest 0.4.23 version bump

Reproduction and root cause

The prepared adapter still encoded provisional Copilot payload assumptions. Live captures showed that native create/edit calls put the file in an absolute path field rather than file_path, and Copilot exposes the Archcore MCP update tool as archcore-update_document rather than the shared canonical name. In addition, hooks without an explicit project-relative cwd execute from the installed plugin directory.

The normalizer now maps those native payloads into the existing internal contract, and the Copilot hook file pins cwd: ".", ARCHCORE_HOST=copilot, native lifecycle keys, mutation-tool matchers, and bounded pre/post hook execution.

Verification

  • make all — JSON, permissions, ShellCheck, and all 385 Bats tests pass
  • make test-codex-smoke — all 5 Codex marketplace/install/runtime smoke tests pass
  • live Copilot CLI 1.0.73 smoke: a direct .archcore/*.md create is denied and no target is written
  • live Copilot CLI 1.0.73 smoke: project-root post-tool cascade context reaches the model
  • live Copilot CLI 1.0.73 smoke: top-level session additionalContext reaches the model in an empty project
  • live native MCP payload capture verifies the archcore-update_document normalization regression

Upstream dependencies found during live testing

Two end-to-end acceptance gaps are outside this plugin adapter and now have focused upstream reports:

The adapter and its independently testable protections are ready for review; initialized-project session context and project-correct MCP operation remain gated by those upstream fixes.

Addresses #24

Archcore Release Bot and others added 2 commits July 15, 2026 14:56
Synthesized from dev — see docs/release.md on dev for the blocklist.
Adding .gitkeep for PR creation (default mode).
This file will be removed when the task is complete.

Issue: archcore-ai#24
@konard
konard changed the base branch from main to dev July 23, 2026 14:18
@konard konard closed this Jul 23, 2026
@konard konard changed the title [WIP] Add GitHub Copilot CLI host adapter (manifest + hooks config) on the prepared core feat: add GitHub Copilot CLI host adapter Jul 23, 2026
@konard

konard commented Jul 23, 2026

Copy link
Copy Markdown
Author

Replacement PR: https://github.com/archcore-ai/plugin/pull/27\n\nPR 26 cannot be reopened because GitHub froze its pre-dev head SHA, which has no common ancestry with the dev base. The prepared branch now contains the completed, dev-based implementation; PR 27 preserves that branch and supersedes this closed draft.

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.

Add GitHub Copilot CLI host adapter (manifest + hooks config) on the prepared core

1 participant