Skip to content

feat: Migrate AI configuration to Agent Skills standard#1818

Merged
DaveSkender merged 6 commits intorefactor-agent-guardrailsfrom
copilot/refactor-agent-guardrails
Dec 31, 2025
Merged

feat: Migrate AI configuration to Agent Skills standard#1818
DaveSkender merged 6 commits intorefactor-agent-guardrailsfrom
copilot/refactor-agent-guardrails

Conversation

Copy link
Contributor

Copilot AI commented Dec 30, 2025

  • Phase 1-4: Complete
  • Fix factual accuracy issues in skill files based on review feedback
  • Remove all pairs (PairsProvider, IIncrementFromPairs) guidance from BufferList and StreamHub skills
  • Thorough fact-check of all skill files against actual codebase
  • Markdown linting verified

Changes in this commit

Removed pairs guidance from:

  • indicator-buffer/SKILL.md - Removed IIncrementFromPairs from interface table, testing requirements, and references
  • indicator-buffer/references/interface-selection.md - Removed IIncrementFromPairs section and decision tree branch
  • indicator-stream/SKILL.md - Removed PairsProvider from provider table, observer interfaces, and references
  • indicator-stream/references/provider-selection.md - Removed PairsProvider section and test interface mapping

Fact-check corrections:

  • indicator-series/SKILL.md - Fixed test category (removed non-existent "StaticSeries" category)
  • indicator-catalog/SKILL.md - Fixed catalog file path to Catalog.Listings.cs

Updated all skill file dates to December 31, 2025

Original prompt

You are a SPECIALIST in implementing AI/coding agent configuration and guardrails for GitHub repos using the latest standards in coding agent Skills and AGENTS.md implementations. You will fully rebuild our entire set of guiding configurations in this repo to move towards these and other industry standard approaches, and away from Copilot specific approaches that are becoming obsolete. Most of these changes will occur with markdown files in the .github folder, but you should consider the entire codebase.

You will not be implementing indicator source code or tests, we're focusing on AI/agent configurations only.

TASK: Implement the plan as defined in docs\plans\refactor-agent-guardrails.plan.md. Update status of completed tasks in this plan file as you complete them.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 30, 2025

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Note

Other AI code review bot(s) detected

CodeRabbit has detected other AI code review bot(s) in this pull request and will avoid duplicating their findings in the review comments. This may lead to a less comprehensive review.

📝 Walkthrough

Walkthrough

This PR restructures the repository's AI agent guidance system, migrating from scoped instruction files and agent definitions to a skills-based architecture. Approximately 17 documentation files are removed from .github/instructions/ and .github/agents/ directories, including guidelines for indicator development (Series, BufferList, StreamHub), performance optimization, testing standards, and code completion workflows. These are replaced with a new skills framework under .github/skills/ featuring consolidated SKILL.md documents and structured reference guides. Supporting documentation files in AGENTS.md, docs/contributing.md, and README references are updated to direct users to the new skills-based system.

Possibly related PRs


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copilot AI changed the title [WIP] Refactor agent configurations to align with industry standards feat: Migrate AI configuration to Agent Skills standard Dec 30, 2025
Copilot AI requested a review from DaveSkender December 30, 2025 23:39
@DaveSkender
Copy link
Owner

@copilot Try again. You got stuck due to an issue with context size.

Copy link
Contributor Author

Copilot AI commented Dec 30, 2025

@copilot Try again. You got stuck due to an issue with context size.

The implementation is complete. All 4 phases have been successfully executed:

  • Phase 2: Created 7 Agent Skills in .github/skills/ following the agentskills.io specification
  • Phase 3: Deleted 17 obsolete files (7 instructions, 8 agent profiles, 2 checklists) and updated all references
  • Phase 4: Validated with dotnet build (0 warnings) and npx markdownlint-cli2 (0 errors)

Latest commit: 4af62a4

@DaveSkender DaveSkender marked this pull request as ready for review December 31, 2025 03:34
@DaveSkender
Copy link
Owner

@coderabbitai full review

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 31, 2025

✅ Actions performed

Full review triggered.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (4)
.github/skills/indicator-stream/references/provider-selection.md (1)

7-17: Wrap decision tree in fenced code block for consistency.

The ASCII art decision tree (lines 7-17) currently lacks a fenced code block wrapper. Per markdown guidelines, text-based diagrams should be wrapped in ```text blocks for consistency with other code examples and to ensure proper rendering across platforms.

🔎 Proposed fix
  ## Provider decision tree
  
- ```text
+ ```
  Does indicator produce chainable output (single Value)?
  ├─ Yes → Does it need OHLCV data?
  │  ├─ Yes → Does it need TWO synchronized series?
  │  │  ├─ Yes → PairsProvider<IReusable, TResult>
  │  │  └─ No → ChainProvider<IQuote, TResult>
  │  └─ No → ChainProvider<IReusable, TResult>
  └─ No → Does output transform quote to quote?
     ├─ Yes → QuoteProvider<IQuote, TResult>
     └─ No → StreamHub<TIn, TResult> (ISeries output)

</details>

</blockquote></details>
<details>
<summary>.github/skills/indicator-series/references/decision-tree.md (1)</summary><blockquote>

`1-138`: **Catalog skill document is comprehensive and actionable.**

The CatalogListingBuilder pattern, method naming, and anti-patterns are well-explained. The critical rule on line 71 (`.WithMethodName()` placement) and line 84–85 (`isReusable` constraints) are highlighted appropriately and align with learnings.

One readability suggestion: The code block at lines 18–36 demonstrates indicator construction alongside catalog patterns. While not incorrect, clarifying that lines 20–36 show *how* an indicator uses the catalog (not the catalog file itself) would prevent potential confusion about which code belongs where.

</blockquote></details>
<details>
<summary>AGENTS.md (1)</summary><blockquote>

`132-181`: **Skills framework sections are well-organized; consider clarifying structure for usage examples.**

The new sections introducing Agent Skills (lines 132–153 "Skills for indicator development" and 154–167 "Skills for focused assistance") successfully replace references to old instruction files with the new skills-based framework. Content is clear and aligns with the PR objectives. The skill descriptions are actionable and include appropriate use cases.

Minor observation: Lines 168–181 provide usage examples but flow directly from the skills table without an explicit section header. Adding a header like "## Usage examples" would improve clarity and help readers distinguish between the reference table (lines 154–167) and practical examples (lines 168–181).

</blockquote></details>
<details>
<summary>.github/skills/performance-testing/references/benchmark-patterns.md (1)</summary><blockquote>

`137-143`: **Minor: Consider documenting BenchmarkConfig.cs as single source of configuration.**

The learnings indicate that `BenchmarkConfig.cs` should serve as the "single source of benchmark configuration" with exporters (GitHub markdown and JSON), columns (Mean, Error, StdDev), and logger settings. While your memory profiling section is solid, briefly mentioning this configuration file would help developers understand the centralized setup approach.

</blockquote></details>

</blockquote></details>

<!-- This is an auto-generated comment by CodeRabbit for review status -->

DaveSkender

This comment was marked as outdated.

Copy link
Contributor Author

Copilot AI commented Dec 31, 2025

@copilot I haven’t reviewed it all, but please fact check your work. I’m seeing many aspects of the new skill files that are not factually correct or not representing our actual preferred syntax....

Fixed multiple factual accuracy issues in commit a483397:

  • Interface selection now correctly shows all BufferList support IQuote from base class
  • Decision trees changed to classifications (spec-driven, not choices)
  • Fixed IReusable vs ISeries chainability explanation
  • Updated cache reference pattern instead of duplicate state
  • Fixed file paths and test category names

Added deferred refactoring tasks to plan as requested.

Copy link
Owner

@DaveSkender DaveSkender left a comment

Choose a reason for hiding this comment

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

@copilot

  1. See my comments below, implement those.
  2. As a TESTING SPECIALIST, use as much time as you can to thoroughly review your work here and improve it. Use MCP servers for external sources of best practices for guidance and to check your work. Examine each of these new guidance topic meticulously with a "fact check" mentality.
  3. Once you are done with the above, review it again and ensure all markdown linting has been addressed and all markdown instructions are being followed.

IMPORTANT NOTE: ALL FILES CHANGED AND IN SCOPE ARE MARKDOWN DOCUMENTATION FILES ONLY. To make yourself more efficient do not spend time repetitively building and testing the source code or running test suites. You will only need to do markdown linting commands here for testing aspects of the syntax and formatting. Don't waste your time!

Copy link
Owner

Choose a reason for hiding this comment

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

Remove all aspects of the "pairs" (e.g. like PairsProvider) based BufferList and StreamHub guidance completely. We'll be deferring implementation of those and will be removing the code aspect of those separate.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Removed all pairs-related guidance (PairsProvider, IIncrementFromPairs) from BufferList and StreamHub skill files in commit 2472f65.

Copy link
Contributor Author

Copilot AI commented Dec 31, 2025

@copilot

  1. See my comments below, implement those.
  2. As a TESTING SPECIALIST, use as much time as you can to thoroughly review your work here and improve it. Use MCP servers for external sources of...

Completed fact-check review of all skill files:

  1. Removed all pairs guidance as requested
  2. Fixed test category (removed non-existent "StaticSeries" category)
  3. Fixed catalog file path to Catalog.Listings.cs
  4. Verified interface patterns against actual codebase
  5. All markdown linting passes (0 errors)

Commit: 2472f65

Copilot AI requested a review from DaveSkender December 31, 2025 21:29
@DaveSkender DaveSkender merged commit b2fb848 into refactor-agent-guardrails Dec 31, 2025
4 checks passed
@DaveSkender DaveSkender deleted the copilot/refactor-agent-guardrails branch December 31, 2025 22:13
@github-project-automation github-project-automation bot moved this from In Review to Done in Stock Indicators for .NET Dec 31, 2025
@coderabbitai coderabbitai bot mentioned this pull request Jan 1, 2026
3 tasks
@martonb
Copy link

martonb commented Jan 1, 2026

Happy New Year! I admire your dedication.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 1, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

3 participants