Skip to content

Add TimePro feature packs and diagnostic skills#7

Merged
jernejk merged 9 commits into
mainfrom
codex/dev-skill-templates
Jun 27, 2026
Merged

Add TimePro feature packs and diagnostic skills#7
jernejk merged 9 commits into
mainfrom
codex/dev-skill-templates

Conversation

@jernejk

@jernejk jernejk commented Jun 27, 2026

Copy link
Copy Markdown
Member

Summary

  • add persistent TimePro feature packs via tp feature accounting/developer enable and legacy flag interception
  • keep broad installed skills for important workflows, with generated skill version tracking in config, stale-skill notices in tp info, and tp skills ignore-version
  • keep accounting MCP as primitive read-only tools; business logic stays in CLI commands or guide recipes, not MCP-only code
  • add tp accounting guide and tp dev guide backed by indexed Markdown guides under guides/accounting/ and guides/dev/
  • load diagnostic guides dynamically from GitHub raw content into ~/.config/timepro-cli/guides-cache/, with embedded fallback for offline installs
  • add configurable guide source settings: guides.cacheMinutes, guides.repositoryUrl, and guides.branch; --refresh / --force-refresh bypass the TTL for one run
  • move highly specific accounting/developer diagnostics into guide recipes, including suggested timesheets, CRM bookings, employee-scoped checks, leave profile issues, prepaid invoice state, AppInsights correlation, tax mismatches, invoice evidence, client position, common accounting reports, rates, environment comparison, and external sync checks
  • add common accounting report guides for clients with at least $50k invoiced revenue in the last 12 months and monthly sales/receipt snapshots
  • add source-only headers to packaged skill templates and strip those headers from generated SKILL.md output
  • add discoverable tp check-update, tp check-version, and tp whats-new commands while keeping the legacy top-level flags; whats-new now renders # What's new in TimePro.Tools
  • add docs/diagnostic-guides.md plus repo-level timepro-guide-curator and timepro-skill-generator skill instructions for adding and curating guide entries and generated skills
  • update release-notes/0.2.1.md, README, AGENTS/CLAUDE guidance, and generated skill docs for the guide-backed diagnostics model

Verification

  • dotnet test tests/SSW.TimePro.Cli.Tests/
  • dotnet test tests/SSW.TimePro.Cli.Integration/
  • git diff --check
  • jq . guides/accounting/index.json
  • jq . guides/dev/index.json
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- accounting guide --use-case "50k revenue" --json
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- accounting guide --use-case "monthly receipts" --json
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- dev guide --use-case "appinsights exception correlation" --json
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- --help | rg "check-update|check-version|whats-new"
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- whats-new
  • dotnet run --no-build --project src/SSW.TimePro.Cli -- --whats-new
  • temp-home skill smoke: enabled accounting/developer features, ran tp skills create, verified expected generated skills exist, and verified generated output does not contain the source-template header
  • local installed-tool smoke: set guides.branch to codex/dev-skill-templates, cleared guide cache, verified tp dev guide and tp accounting guide fetched into ~/.config/timepro-cli/guides-cache/ without --refresh, then restored local config to main
  • babysit-pr 5-minute pass: CI passing, no unresolved comments, no active Copilot task
  • push hook: NuGet audit reported no vulnerable packages

@jernejk jernejk force-pushed the codex/dev-skill-templates branch from d78dc89 to 63d604d Compare June 27, 2026 01:43
@jernejk jernejk force-pushed the codex/dev-skill-templates branch from 63d604d to 3cbc46b Compare June 27, 2026 02:01
@jernejk jernejk marked this pull request as ready for review June 27, 2026 02:29
Copilot AI review requested due to automatic review settings June 27, 2026 02:29

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR adds persistent “feature packs” to control optional TimePro capabilities (generated skills + MCP tool registration), moves long-form skill content into embedded Markdown templates, and introduces CLI-first accounting diagnostics with MCP delegating to the same report service.

Changes:

  • Added persistent feature packs (tp feature …) plus legacy flag interception (--accounting, --developer, --dev) to enable packs without breaking older workflows.
  • Switched generated skills to render from embedded Markdown templates, and added new tenant setup / developer diagnostics / environment comparison skills.
  • Added tp accounting … diagnostic commands and an AccountingDiagnosticsService, with optional accounting MCP tools gated behind the accounting feature pack.

Reviewed changes

Copilot reviewed 33 out of 34 changed files in this pull request and generated no comments.

Show a summary per file
File Description
tests/SSW.TimePro.Cli.Tests/Infrastructure/FeatureFlagCommandLineInterceptorTests.cs Adds unit coverage for legacy flag interception and persistent feature enablement.
tests/SSW.TimePro.Cli.Tests/Infrastructure/ConfigServiceTests.cs Extends config round-trip tests to include persisted feature pack state/versioning.
tests/SSW.TimePro.Cli.Tests/Features/Skills/SkillGenerationTests.cs Validates new skill templates/skills render correctly and contain no unresolved placeholders.
tests/SSW.TimePro.Cli.Tests/Features/Mcp/AccountingMcpToolsTests.cs Adds MCP test coverage for the accounting tax mismatch diagnostic path.
src/SSW.TimePro.Cli/SSW.TimePro.Cli.csproj Embeds skill Markdown templates into the CLI assembly.
src/SSW.TimePro.Cli/Program.cs Adds feature-flag interception early in startup; registers feature + accounting command branches and diagnostics service.
src/SSW.TimePro.Cli/Infrastructure/Config/GlobalConfig.cs Introduces persisted features dictionary with per-feature enabled/version metadata.
src/SSW.TimePro.Cli/Infrastructure/Config/FeatureFlagCommandLineInterceptor.cs Implements legacy flag consumption and persistence into global config.
src/SSW.TimePro.Cli/Infrastructure/Config/FeatureCatalog.cs Defines feature catalog + normalization + GlobalConfig extensions for feature state.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-timesheets.md Adds packaged Markdown template for the main timesheets skill body.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-tenant-setup.md Adds packaged tenant setup skill template for safe tenant/env switching workflows.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-env-compare.md Adds packaged environment comparison skill template.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-dev-timesheet-diagnostics.md Adds packaged developer-focused timesheet diagnostics skill template.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-dev-finance-diagnostics.md Adds packaged developer-focused finance diagnostics skill template.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-dev-diagnostics.md Adds packaged developer diagnostics overview skill template.
src/SSW.TimePro.Cli/Features/Skills/Templates/timepro-accounting-cli.md Adds packaged accounting CLI skill template (read-only, reconciliation-oriented).
src/SSW.TimePro.Cli/Features/Skills/SkillTemplateRenderer.cs Loads embedded template resources and replaces placeholders (fails fast on unresolved tokens).
src/SSW.TimePro.Cli/Features/Skills/SkillModelBuilder.cs Adds new skill models and routes bodies through template-backed builder methods.
src/SSW.TimePro.Cli/Features/Skills/SkillBodyBuilder.cs Refactors body generation to template rendering + small dynamic placeholder fills.
src/SSW.TimePro.Cli/Features/Skills/CreateCommand.cs Generates optional skills based on enabled feature packs; persists feature content versions.
src/SSW.TimePro.Cli/Features/Mcp/Tools/AccountingMcpTools.cs Adds accounting diagnostics MCP tools delegating to the shared diagnostics service.
src/SSW.TimePro.Cli/Features/Mcp/McpHostCommand.cs Registers default MCP tool groups explicitly and gates accounting tools behind the feature pack.
src/SSW.TimePro.Cli/Features/FeatureFlags/FeatureCommand.cs Adds tp feature command to enable/disable/inspect feature packs (with JSON output option).
src/SSW.TimePro.Cli/Features/Accounting/TaxMismatchesCommand.cs Adds CLI command to produce the tax mismatch diagnostic report.
src/SSW.TimePro.Cli/Features/Accounting/InvoiceDiagnosticsCommand.cs Adds CLI command for deep invoice reconciliation diagnostics.
src/SSW.TimePro.Cli/Features/Accounting/GuideCommand.cs Adds CLI command to output accounting diagnostic interview guide + command choices.
src/SSW.TimePro.Cli/Features/Accounting/ClientDiagnosticsCommand.cs Adds CLI command for client-level accounting position diagnostics.
src/SSW.TimePro.Cli/Features/Accounting/AccountingDiagnosticsService.cs Implements the shared report logic used by both CLI commands and MCP tools.
release-notes/0.2.1.md Documents feature packs, new skills/templates, and accounting diagnostics additions.
README.md Updates CLI/MCP docs to reflect default vs feature-gated MCP tools and feature-pack-based skill generation.
docs/skill-generation.md Updates skill generation docs for template-backed skills and feature-pack gating.
docs/accounting.md Updates accounting docs with new workflows and feature-gated MCP enablement.
AGENTS.md Updates canonical repo guidance with feature-pack persistence and MCP/CLI delegation rules.
.gitignore Adjusts ignores so generated .agents/skills/* stay untracked except the release skill.

@jernejk jernejk merged commit fcaf67e into main Jun 27, 2026
2 checks passed
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.

2 participants