Skip to content

Add .github/copilot-instructions.md#744

Open
jerrysxie wants to merge 2 commits intoOpenDevicePartnership:mainfrom
jerrysxie:add-copilot-instructions
Open

Add .github/copilot-instructions.md#744
jerrysxie wants to merge 2 commits intoOpenDevicePartnership:mainfrom
jerrysxie:add-copilot-instructions

Conversation

@jerrysxie
Copy link
Contributor

Add Copilot instructions covering build/test/lint commands, service architecture patterns, and key codebase conventions.

Add Copilot instructions covering build/test/lint commands,
service architecture patterns, and key codebase conventions.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@jerrysxie jerrysxie self-assigned this Mar 9, 2026
@jerrysxie jerrysxie added the enhancement New feature or request label Mar 9, 2026
Copilot AI review requested due to automatic review settings March 9, 2026 16:51
@jerrysxie jerrysxie requested a review from a team as a code owner March 9, 2026 16:51
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a new .github/copilot-instructions.md document intended to guide Copilot (and contributors) on how to build/test/lint the workspace and on key architecture/convention details for the embedded-services codebase.

Changes:

  • Introduces a Copilot instruction doc with common build/lint/test commands aligned to CI workflows.
  • Documents service/IPC architecture concepts (comms endpoints, message routing) and core utilities/macros.
  • Captures conventions around feature flags, clippy strictness, dependencies, and testing.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

kurtjd
kurtjd previously approved these changes Mar 11, 2026
Copy link
Contributor

@kurtjd kurtjd left a comment

Choose a reason for hiding this comment

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

I'll be honest I'm still not entirely sure what these instructions offer if they are AI generated in the first place (I thought things like skills, AGENTS.md, CLAUDE.md, etc are to provide additional context the LLM can't glean on it's own from the codebase) but that likely means I just need to research this a bit more.

@jerrysxie
Copy link
Contributor Author

I'll be honest I'm still not entirely sure what these instructions offer if they are AI generated in the first place (I thought things like skills, AGENTS.md, CLAUDE.md, etc are to provide additional context the LLM can't glean on it's own from the codebase) but that likely means I just need to research this a bit more.

@kurtjd It is more like breadcrumbs to help the agent to find its way. Unless we commit something to AI agent's memory, it will need to rediscover the context every single time when we open a new session. Instruction file helps AI to find its way faster. We can also add contributing policy to the instruction file so agent would follow our guidelines.

@kurtjd
Copy link
Contributor

kurtjd commented Mar 11, 2026

I'll be honest I'm still not entirely sure what these instructions offer if they are AI generated in the first place (I thought things like skills, AGENTS.md, CLAUDE.md, etc are to provide additional context the LLM can't glean on it's own from the codebase) but that likely means I just need to research this a bit more.

@kurtjd It is more like breadcrumbs to help the agent to find its way. Unless we commit something to AI agent's memory, it will need to rediscover the context every single time when we open a new session. Instruction file helps AI to find its way faster. We can also add contributing policy to the instruction file so agent would follow our guidelines.

Okay that makes sense to me. Yeah I suppose we just need to be careful since embedded-services patterns and architecture are changing pretty frequently and don't want this to drift too far from the actual state of the repo. Maybe a rolling workflow can have Copilot regenerate this every so often or just have a rule that PRs introducing significant changes need to update this as well.

@jerrysxie jerrysxie moved this to In progress in ODP Backlog Mar 12, 2026
Replace outdated comms-based service pattern with the
Service<'hw> trait, Resources, and Runner pattern from
v0.2.0 branch. Add note that main branch still has legacy
patterns being phased out.

Changes:
- Rewrite service pattern to show Service trait, Runner,
  Resources, and spawn_service! macro
- Add API guidelines reference and key principles
- Replace comms IPC section with current mechanisms
- Add relay pattern to IPC list
- Add examples/rt633 to build/lint commands
- Fix GlobalRawMutex to include RISC-V target
- Soften error handling to 'prefer' language
- Document both block_on and tokio::test patterns
- Add commit message guidelines section
- Remove deprecated comms, intrusive_list, static buffer
  references from core utilities

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

Status: In progress

Development

Successfully merging this pull request may close these issues.

4 participants