Skip to content

Phase 6: Core Installer Orchestration #19

Closed

Description

@Cesar-M-Diaz

Phase 6: Core Installer Orchestration

Implement the main install/uninstall/doctor orchestration functions that tie all modules together.

Tasks

  • Task 20: Implement main installer orchestrator — Create index.ts with install() function. Orchestrate flow: load bundle → ensure auth → install skills → configure MCP → write tracking file. Accept InstallOptions, return InstallResult. Handle errors and partial failures.

    • Depends on: Tasks 8, 11, 14, 15
    • Files: packages/core/src/index.ts
    • Testing: Integration test with mocked modules. Test happy path, auth failure, skill copy failure, MCP config failure.
  • Task 21: Implement uninstall function — Add uninstall() function to index.ts. Read tracking file → remove MCP configs → remove skills → delete tracking file. Preserve credentials. Handle missing tracking file gracefully.

    • Depends on: Task 20
    • Files: packages/core/src/index.ts
    • Testing: Integration test with mocked tracking file. Test clean uninstall, missing tracking file, partial artifacts.
  • Task 22: Implement doctor function — Add doctor() function to index.ts. Check: credentials exist and valid → skills exist in harness path → MCP configs present → MCP servers reachable. Return DoctorReport with status and actionable messages.

    • Depends on: Task 20
    • Files: packages/core/src/index.ts
    • Testing: Integration test with various failure scenarios. Test all green, missing creds, missing skills, unreachable MCP.

Activity

  1. added theissue type on Jun 9, 2026
  2. self-assigned this
    on Jun 9, 2026
  3. coderabbitai commented on Jun 9, 2026

    @coderabbitai
    🔗 Related PRs

    #1 - Initial spec design [merged]


    📝 Issue Planner

    Check the box below or use the @coderabbitai plan command to generate an implementation plan and prompts that you can use with your favorite coding assistant.

    • Create Plan

    🧪 Issue enrichment is currently in open beta.

    You can configure auto-planning by selecting labels in the issue_enrichment configuration.

    To disable automatic issue enrichment, add the following to your .coderabbit.yaml:

    issue_enrichment:
      auto_enrich:
        enabled: false

    💬 Have feedback or questions? Drop into our discord!

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

Metadata

Metadata

Assignees

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions