Skip to main content

GitHub Copilot Plugin

The Constellation plugin for GitHub Copilot supercharges your AI-assisted development workflow with deep codebase understanding. It provides contextual skills, proactive agents, and session hooks that leverage Constellation's code intelligence platform.

Source: github.com/ShiftinBits/constellation-copilot

Overview

FeatureDescription
7 SkillsContextual knowledge loaded automatically based on your questions
3 AgentsCodebase exploration, risk assessment, and dependency analysis
2 HooksIntelligent tool guidance and context preservation

Installation

Prerequisites

Quick Start

  1. Install the plugin from GitHub:

    Enter the following in your terminal:
    copilot plugin install ShiftinBits/constellation-copilot
  2. Configure authentication:

    Enter the following in your terminal:
    constellation auth
  3. Verify the connection:

    Enter the following in Copilot:
    /constellation:status

Uninstall

Enter the following in your terminal:
copilot plugin uninstall constellation

Skills

Copilot automatically activates specialized analysis based on your questions. You don't need to invoke them explicitly — they load contextual knowledge when relevant topics come up.

Status

/constellation:status

Check API connectivity and project indexing status.

> /constellation:status

Status: Connected /
- API Connection: Active
- Authentication: Valid
- Project Access: Confirmed
- Last Indexed: 2026-04-07 at 22:42:17 UTC
- Response Time: 569ms

The Constellation code intelligence service is running and fully operational.

If issues are detected, the skill provides specific error codes and remediation steps. For detailed diagnostics, use the diagnose skill.

Diagnose

Quick health check for Constellation connectivity and authentication.

Constellation Health Check
===========================
MCP Server: OK
API Auth: OK
Project: my-awesome-app
Index: 1,247 files, 8,932 symbols

All systems operational.

When issues are detected:

Constellation Health Check
===========================
MCP Server: OK
API Auth: FAILED

Issue: Authentication failed - Access key missing or invalid.

Quick Fix: Run `constellation auth` to configure credentials.

Architecture

Get a high-level overview of your codebase structure.

Project: my-awesome-app
Total Files: 1,247
Total Symbols: 8,932

Language Distribution:
├── TypeScript: 892 files (71.5%)
├── JavaScript: 312 files (25.0%)
└── JSON: 43 files (3.5%)

Key Directories:
├── src/services/: 1,234 symbols
├── src/components/: 892 symbols
└── src/utils/: 456 symbols

Impact

Analyze the blast radius before changing a symbol.

Triggers when you ask about: impact of changes, blast radius, risk assessment

Symbol: UserService (class)
Risk Level: HIGH
Files Affected: 23
Symbols Affected: 67
Public API Impact: Yes
Test Coverage: 72%

Top Affected Files:
├── src/controllers/user.controller.ts
├── src/controllers/auth.controller.ts
├── src/middleware/auth.middleware.ts
└── ... 20 more files

Recommendations:
- Review UserController before modifying
- Update unit tests in user.service.spec.ts
- Check integration with AuthService

Deps

Map dependencies or find what depends on a file.

Triggers when you ask about: file dependencies, circular dependencies, module coupling

Dependencies:

Dependencies (12):
├── Internal (8)
│ ├── src/models/payment.model.ts
│ ├── src/utils/currency.ts
│ ├── src/services/user.service.ts
│ └── ... 5 more
└── External (4)
├── stripe
├── lodash
└── ... 2 more

No circular dependencies detected.

Dependents:

Dependents (7):
├── src/controllers/payment.controller.ts
├── src/controllers/checkout.controller.ts
├── src/services/order.service.ts
└── ... 4 more

Unused

Find orphaned exports and dead code.

Triggers when you ask about: dead code, orphaned exports, unused functions

Found 7 orphaned functions:
├── src/utils/legacy.ts
│ ├── formatLegacyDate (line 23)
│ └── parseLegacyConfig (line 45)
├── src/helpers/deprecated.ts
│ └── oldValidation (line 12)
├── src/services/unused.service.ts
│ ├── deprecatedMethod (line 34)
│ ├── unusedHelper (line 56)
│ └── legacyTransform (line 78)
└── src/utils/temp.ts
└── debugLogger (line 8)

Recommendation: Review these exports and remove if no longer needed.

Troubleshooting

Diagnose Constellation issues with error code reference.

Triggers when you encounter: error codes, debugging, connection problems

Error: AUTH_ERROR

Cause: Access key is missing, invalid, or expired.

Quick Fixes:
1. Run: constellation auth
2. Verify CONSTELLATION_ACCESS_KEY environment variable
3. Check key hasn't been revoked in dashboard

Still stuck? Ask for a full health check with the diagnose skill.

Agents

Copilot agents are specialized assistants that proactively help with specific tasks. The plugin includes three agents that activate based on your conversation.

source-scout

Purpose: Codebase exploration, understanding, and intelligent navigation.

Triggers when you ask things like:

  • "What does this codebase do?"
  • "Where is the authentication logic?"
  • "Find all places that use the UserService"
  • "How does the payment processing work?"
  • "Show me the API endpoints in this project"

What it does:

  1. Uses Constellation's semantic search to find symbols intelligently
  2. Analyzes architecture and provides codebase overviews
  3. Traces symbol usage across the entire codebase
  4. Maps call graphs to explain how components interact
  5. Falls back gracefully to traditional tools if Constellation is unavailable

Key capabilities:

  • Symbol search with filtering by type (class, function, interface, etc.)
  • Call graph analysis (who calls what)
  • Dependency chain tracing
  • Architecture overview with metrics

impact-investigator

Purpose: Proactively assesses risk before refactoring, renaming, or deleting code.

Triggers when you say things like:

  • "I'm going to rename UserAuthService to AuthenticationService"
  • "Let's delete this unused code"
  • "I want to refactor this class"

Example:

You: "Rename AuthService to AuthenticationService"
Copilot: "Before renaming, let me analyze the potential impact..."
[Launches impact-investigator agent]

What it does:

  1. Analyzes the impact of the proposed change
  2. Identifies all files and symbols that would be affected
  3. Assesses risk level (Low/Medium/High/Critical)
  4. Calculates blast radius and scope
  5. Warns about potential breaking changes to public APIs
  6. Suggests the safest order for multi-file changes

Risk levels:

  • Low: < 5 files affected, no public API changes, high test coverage
  • Medium: 5-15 files affected, internal API changes, moderate coverage
  • High: > 15 files affected, public API changes, low test coverage
  • Critical: Core infrastructure, security-related, or widely-used utilities

dependency-detective

Purpose: Detects circular dependencies and unhealthy coupling patterns.

Triggers when you say things like:

  • "I need to import UserService into AuthService"
  • "I'm worried our modules are too tightly coupled"
  • "Before I submit this PR, are there any dependency issues?"

What it does:

  1. Detects circular dependencies in specified scope or entire codebase
  2. Identifies overly coupled modules
  3. Finds dependency chains that could cause problems
  4. Suggests refactoring to improve dependency health
  5. Verifies proposed imports won't create cycles

Breaking cycle strategies it suggests:

  • Interface extraction
  • Dependency inversion
  • Event-driven communication
  • Module restructuring
  • Lazy loading with dynamic imports

Hooks

The plugin includes two hooks that guide Copilot toward using Constellation's code intelligence and preserve context across the session.

Code Intel Preference Hook

Event: sessionStart

Purpose: Establishes code_intel as the primary tool for code understanding at the start of every session.

Behavior:

  • Injects a prompt that tells Copilot to use code_intel as its default tool for structural code questions
  • Establishes the mental model: code_intel for structure (definitions, callers, dependencies), Grep for literal text
  • Runs automatically when Copilot starts — no user interaction required

Search Nudge Hook

Event: preToolUse

Purpose: Guides Copilot toward semantic search when appropriate.

Behavior:

  • Triggers when Copilot is about to use Grep or Glob
  • Reminds Copilot that code_intel answers structural questions (symbol definitions, callers, dependencies) in one call vs. 3-5 text searches
  • Allows Grep/Glob for literal text searches (error messages, config values) or when code_intel is unavailable

Troubleshooting

Quick Diagnostics

Ask Copilot to run a health check:

Check Constellation connectivity

This checks MCP server connectivity, API authentication, and project indexing status with actionable fixes for each issue.

Common Errors

ErrorCauseSolution
MCP_UNAVAILABLEMCP server not runningRestart Copilot to reinitialize connections
AUTH_ERRORMissing or invalid Access keyRun constellation auth
PROJECT_NOT_INDEXEDProject needs indexingRun constellation index --full
SYMBOL_NOT_FOUNDSymbol not in indexSearch with partial match or re-index
API_UNREACHABLEAPI server not runningCheck network and API URL in constellation.json
FILE_NOT_FOUNDFile path not in indexVerify relative path, check language config
Skills not activatingPlugin not loadedRestart the CLI/editor or reinstall the plugin
Changes not taking effectPlugin cachedUninstall and reinstall: copilot plugin uninstall constellation && copilot plugin install ShiftinBits/constellation-copilot

MCP Server Issues

If you see MCP connection errors:

  1. Restart Copilot - MCP connections initialize at startup

  2. Verify MCP server can run:

    npx @constellationdev/mcp@latest --version
  3. Check plugin configuration in .mcp.json:

    {
    "mcpServers": {
    "constellation": {
    "type": "stdio",
    "command": "npx",
    "args": ["-y", "@constellationdev/mcp@latest"]
    }
    }
    }

Step-by-Step Diagnostics

  1. Run health check:

    /constellation:status
  2. Verify CLI status:

    constellation status
  3. Re-index if needed:

    constellation index --full

Getting Help

Advanced Usage

Parallel API Execution

The Constellation API uses Code Mode, which allows writing JavaScript that executes multiple API calls in parallel. This makes complex analyses significantly faster:

// All three queries execute in parallel
const [deps, dependents, usage] = await Promise.all([
api.getDependencies({ filePath: 'src/service.ts' }),
api.getDependents({ filePath: 'src/service.ts' }),
api.traceSymbolUsage({ symbolName: 'MyClass', filePath: 'src/service.ts' })
]);

Available API Methods

CategoryMethods
DiscoverysearchSymbols, getSymbolDetails
DependenciesgetDependencies, getDependents, findCircularDependencies
TracingtraceSymbolUsage, getCallGraph
ImpactimpactAnalysis, findOrphanedCode
ArchitecturegetArchitectureOverview

For complete API documentation, see the MCP Server Tools Reference.