-
Notifications
You must be signed in to change notification settings - Fork 127
Description
Issue Description
Enable HVE-Core to distribute multiple extension packages and support persona-based artifact collections for different user roles and domains. This delivers curated collections of agents, prompts, and instructions tailored to specific personas: Developers, Technical Program Managers (TPMs), DevOps Engineers, Architects, and Technical Writers.
Problem
Today HVE-Core ships a single monolithic extension package containing all 61 artifacts (21 agents, 22 prompts, 17 instructions, 1 skill). Every user receives every artifact regardless of role. The manual installer (Phase 7) only copies agents, leaving prompts and instructions behind, which breaks agents that depend on paired artifacts. There is no mechanism to filter or organize artifacts by user role.
Proposed Solution
Implement a hybrid distribution system combining:
- AI Artifacts Registry (
ai-artifacts-registry.json) as the single source of truth for persona and dependency metadata - Collection manifests defining which artifacts belong in each persona-targeted package
- Enhanced packaging scripts that build multiple
.vsixpackages from one codebase - Enhanced installer agent with persona selection, all-artifact-type copying, and dependency resolution
Persona Taxonomy
| Persona ID | Display Name | Target Audience |
|---|---|---|
developer |
Developer | Software engineers writing code |
tpm |
Technical PM | Program/product managers |
devops |
DevOps Engineer | Platform, SRE, infrastructure engineers |
architect |
Software Architect | Solution/system architects |
technical-writer |
Technical Writer | Documentation specialists |
Note: A
data-scientistpersona is under evaluation. The HVE Data Science extension (ise-hve-essentials.hve-data-science) already covers this audience. A persona collection here may come later depending on how the two extensions relate.
Implementation Phases
Work is organized into phases delivered as sub-issues:
- Registry Design and Schema - Create the artifact registry, JSON schema, persona taxonomy, and validation integration
1b. Maturity Migration - Remove maturity from frontmatter, update packaging scripts and validation to use registry - Packaging Enhancement - Collection manifests, multi-package builds from
Prepare-Extension.ps1andPackage-Extension.ps1 - Installer Agent Enhancement - Persona selection in Phase 7, all artifact type copying, dependency resolution, upgrade handling
- Documentation and Migration - Update contributing docs, architecture docs, per-collection descriptions
- Publishing Infrastructure - Marketplace IDs, CI/CD multi-package workflow, release process updates
- Persona-to-Artifact Mapping - Finalize persona definitions and assign all artifacts to personas with team input
Success Criteria
- Multiple extension packages can be built from a single codebase
- Users can install artifacts filtered by persona via extension or manual methods
- Registry format supports persona tagging for all artifact types
- Existing artifacts can be categorized without breaking current functionality
- Installer copies agents, prompts, and instructions with dependency resolution
-
.hve-tracking.jsontracks all artifact types with upgrade support
Sub-Issues
- feat: AI Artifacts Registry Design and Schema #432 - Phase 1: AI Artifacts Registry Design and Schema
- feat: Migrate Maturity Metadata to Registry and Remove from Frontmatter #438 - Phase 1b: Migrate Maturity Metadata to Registry
- feat: Multi-Package Extension Build System #433 - Phase 2: Multi-Package Extension Build System
- feat: Installer Agent Persona Selection and All-Artifact Copying #434 - Phase 3: Installer Agent Persona Selection and All-Artifact Copying
- feat: Documentation Updates for Persona Distribution #435 - Phase 4: Documentation and Artifact Migration
- feat: Publishing Infrastructure and CI/CD for Multi-Package Distribution #436 - Phase 5: Publishing Infrastructure and CI/CD
- feat: Persona-to-Artifact Mapping #437 - Phase 6: Persona-to-Artifact Mapping
- feat(extension): Collection-Level Maturity Gating for Release Channel Control #467 - Phase 7: Collection-Level Maturity Gating for Release Channel Control
- feat(ci): PR Validation for AI Artifact Registry Drift Detection #468 - Phase 8: PR Validation for AI Artifact Registry Drift Detection
Additional Context
- Breaking changes are acceptable per project conventions
- Current artifact counts: 21 agents, 22 prompts, 17 instructions, 1 skill
- Persona-to-artifact assignments are intentionally deferred to Phase 6 for team discussion
- Related: #251 - Update extension packaging to distribute skills — skill distribution must adopt the persona-based approach
Handoff Resolution Architecture
The registry's requires.agents field captures only runtime dispatch dependencies (agents invoked via runSubagent). Agent-to-agent handoff relationships (the handoffs frontmatter field) are excluded from the registry to avoid circular dependencies. During packaging (Phase 2) and installation (Phase 3), handoff targets are resolved dynamically by parsing agent frontmatter and iterating until transitive closure is reached. This ensures complete agent graphs are distributed without redundant data or circular dependency issues in the registry.
Future: Plugin Distribution
Copilot CLI and Claude Code both support plugin-based distribution where collections of agents, skills, and prompts are packaged and installed as a unit. Awesome Copilot already ships its collections as installable plugins via copilot plugin install, and Claude Code plugins use a similar plugin.json manifest covering agents/, skills/, commands/, hooks, and MCP servers. The AI artifacts registry designed in Phase 1 should be structured so that it can drive plugin manifest generation in the future, enabling persona-filtered plugin packages alongside VS Code extensions. This is not in scope for the current work but should inform registry schema decisions.