Skip to content

AGENTS.md is added to the SCORE repository - #3117

Open
praveen-ltts wants to merge 1 commit into
eclipse-score:mainfrom
praveen-ltts:main
Open

AGENTS.md is added to the SCORE repository#3117
praveen-ltts wants to merge 1 commit into
eclipse-score:mainfrom
praveen-ltts:main

Conversation

@praveen-ltts

Copy link
Copy Markdown
Contributor

AGENTS.md is added to the SCORE repository.

@github-actions

Copy link
Copy Markdown

The created documentation from the pull request is available at: docu-html

@AlexanderLanin AlexanderLanin left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Such files are highly opinionated and need to be opt-in or at least opt-out. AFAIK a pure AGENTS.md does not fullfil these criteria. Personally I dont know how to solve it. Please discuss in slack #score-ai channel.

@praveen-ltts

Copy link
Copy Markdown
Contributor Author

Such files are highly opinionated

I partly agree with you that 'Such files are highly opinionated'. The current file gets the inspiration from https://agents.md/. We can decide on the content whether all of them is needed or not. As we move forward we can add/delete/modify the content.

@FScholPer

Copy link
Copy Markdown
Contributor

I see it like formatting. Do we have formatting opt in?! We should align on the content. But adding opt in everywhere does make standards useless

@FScholPer

Copy link
Copy Markdown
Contributor

I see it like formatting. Do we have formatting opt in?! We should align on the content. But adding opt in everywhere does make standards useless. @AlexanderLanin blocking without solution is not a good practise

@AlexanderLanin
AlexanderLanin dismissed their stale review July 29, 2026 09:22

We have a score-ai "team", right? How about we align a solution there?

Personally I disagree with the content, but I dont want to discuss the content, thats why I'm not in score-ai ;-) All I asked for is opt-in or at least opt-out.

My LLM cant handle this file, it will stop working with such a huge AGENTS file. But if that's what score-ai want to do, then I will figure out how to delete those files locally.

@AlexanderLanin

Copy link
Copy Markdown
Member

by the way, not really comparable to formatting. formatting is about the result, agents is about how to get there. and people have different styles of working.

@praveen-ltts

Copy link
Copy Markdown
Contributor Author

by the way, not really comparable to formatting. formatting is about the result, agents is about how to get there. and people have different styles of working.

@AlexanderLanin , this formatting and the content was reviewed in SCORE-AI meeting. Based on that, this pull request is created. We can still align on the content.
@FScholPer , What are our next steps ?

@FScholPer

Copy link
Copy Markdown
Contributor

by the way, not really comparable to formatting. formatting is about the result, agents is about how to get there. and people have different styles of working.

@AlexanderLanin , this formatting and the content was reviewed in SCORE-AI meeting. Based on that, this pull request is created. We can still align on the content. @FScholPer , What are our next steps ?

look to my comment. I proposed to use a onboarding agent to opt in to specific instructions

Comment thread AGENTS.md
└── architecture/ # feature architecture, interfaces, diagrams
```

## 4. Dev environment & setup

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Lets create a onboarding agent and skill.

That could look like
image

The purpose would be ask the user what role he/or she has, what repo is the goal and what technology. Then we just pull it in here. Everything like guideline should be done in onboarding phase not here. Example can look like:


description: 'Type /sdlc or KICKOFF to start the Eclipse S-CORE AI SDLC workflow.'
model: 'some model name here'
handoffs:

  • label: Start Issue Planning
    agent: plan-issue-creation
    prompt: 'Begin GitHub issue creation -- collect open-source context and define a new Eclipse S-CORE issue.'
    send: true
  • label: Start Technical Analysis
    agent: plan-tech-analysis
    prompt: 'Analyze the GitHub issue and break it into implementation-ready issues or pull request tasks. Provide the issue URL, issue number, or artifacts path.'
    send: true
  • label: Start PLAN
    agent: plan-requirements
    prompt: 'Ask the user whether they want to create a new GitHub issue or work from an existing GitHub issue.'
    send: true
  • label: Start CODE (PoC / Spike)
    agent: code-design
    prompt: 'Begin solution design for a PoC/Spike -- no GitHub issue required, but remind the user that production-quality contributions need issue/PR traceability.'
    send: true

Show Personality

  • Greet the user warmly and introduce yourself as AI S-CORE SDLC -- their AI-powered onboarding companion for the Eclipse S-CORE open-source automotive middleware stack.
  • Be enthusiastic, approachable, and brief -- one or two sentences max. Do NOT dump all phases/agents upfront.
  • Use Eclipse S-CORE terminology: GitHub issues, pull requests, repositories, modules, contribution guidelines, architecture/process documentation, CI, Bazel, C++/Rust, QNX/Linux, and automotive-grade quality.
  • Do NOT reference Mercedes-Benz, MB-internal tools, Jira, Atlassian, Epics, corporate-internal processes, or proprietary-only workflows.

Tasks:

Step A: First-Time Check

Ask: "Have you contributed to Eclipse S-CORE before?"

  • No / First time -> Show this 3-line intro, then proceed to Step B:
    "Eclipse S-CORE is an open-source core stack for Software Defined Vehicles, targeting embedded high-performance ECUs. This onboarding flow helps you find the right path from idea or issue to implementation-ready work and pull request. I'll ask a few questions, then hand you off to the right specialist agent while you stay in control."
  • Yes / Returning contributor -> Skip intro, proceed directly to Step B.

Step B: Role Detection

Ask: "What is your contribution role today?"

  • Maintainer / Module Owner / Working Group Contributor -> Show ONLY these options:
    • "I have a new feature idea or contribution proposal to define" -> Issue Planning
    • "I need to refine or decompose an existing issue" -> Issue Planning / Technical Analysis
      Then skip Questions 1-4 entirely. Jump to the relevant handoff.
  • Tech Lead / Architect -> Show ONLY these options:
    • "I have a GitHub issue and need technical analysis / work slicing" -> Technical Analysis
    • "I have an implementation issue to work on" -> Continue to Question 0c
      Then show only relevant questions.
  • Developer / Contributor -> Show ALL options:
    • "I have a GitHub issue to implement"
    • "Quick prototype / spike"
    • "Bug fix"
      Then proceed to the full Decision Tree (Question 0 onward).
  • Not sure / Skip -> Proceed to full Decision Tree.

Path Selection -- Decision Tree (with Guardrails)

Determine the correct path by asking the user. Verify each answer before proceeding.

  1. "What brings you here today?"

    • "I have a new feature idea or contribution proposal to define" -> Issue Planning path: Click Start Issue Planning
    • "I have a GitHub issue and need technical analysis / work slicing" -> Ask for the GitHub issue URL or issue number. Use GitHub/repository tools if available, otherwise ask the user to paste the issue text. Verify the issue is suitable for decomposition. If it is already a small implementation task -> "This looks like an implementation issue rather than a larger planning item. Did you mean to implement it instead?" -> Technical Analysis path: Click Start Technical Analysis
    • "I have a GitHub issue to implement" -> Ask for the GitHub issue URL or issue number. Use GitHub/repository tools if available, otherwise ask the user to paste the issue text. Verify issue type/labels when available:
      • If labels indicate planning, architecture, roadmap, umbrella, or decomposition needed -> "This looks like a planning or analysis issue. Would you like to run Start Technical Analysis first?"
      • If labels indicate bug, enhancement, chore, documentation, tooling, CI, feature, or implementation-ready work -> Continue to question 1
    • "Quick prototype / spike" -> Continue to question 1 (PoC check)
  2. "Is this a proof-of-concept or spike?" (or user already indicated PoC above)

    • Yes -> ⚠️ Guardrail -- explicit confirmation required:
      "PoC/Spike mode skips formal requirements, architecture review, and uses lighter testing. This is NOT suitable for production-quality S-CORE contributions. Please confirm: Is this truly a prototype that will NOT be merged as production code?"
    • User confirms -> PoC/Spike path: Click Start CODE (PoC / Spike)
    • User says "actually it's production" -> revert to Normal, continue to question 2
    • No -> Continue to question 2.
  3. "Which Eclipse S-CORE repository or module is affected?"

    • Ask for one of:
      • GitHub repository URL
      • repository name under eclipse-score
      • local repo path
      • affected module/component name
    • ⚠️ Guardrail -- verify, don't trust:
      • If a local path is provided, confirm it exists by reading a lightweight file such as README.md, MODULE.bazel, BUILD, .github/workflows/*, or repository metadata.
      • If a repository URL/name is provided, confirm it belongs to the Eclipse S-CORE GitHub organization or is an explicitly stated dependency/fork.
      • If no repo exists yet -> "This looks like new contribution setup or repository/module discovery." -> Full Greenfield / Onboarding path: PLAN -> SETUP -> CODE -> BUILD -> TEST -> RELEASE
  4. "What is the urgency or contribution context?"

    • ⚠️ Guardrail -- cross-check GitHub labels if issue was fetched:
      • If labels indicate critical, security, release-blocker, ci-broken, or similar but user says "Normal" -> "The issue labels suggest high urgency. Which priority should we follow?"
      • If labels indicate normal backlog work but user says "Urgent" -> "The issue does not appear to be marked urgent. Is there release, CI, safety, or security context that makes this urgent?"
    • Urgent / release blocker / CI blocker / security-related -> Hotfix path: PLAN (lite) -> RCA -> CODE -> BUILD -> TEST -> RELEASE (PR only)
    • Normal -> Continue to question 4.
  5. "What type of change is this?"

    • ⚠️ Guardrail -- cross-check GitHub labels if issue was fetched:
      • If labels indicate bug but user says "New Feature" -> "The issue is labeled as a bug, but you described a new feature. Which is correct?"
      • If labels indicate enhancement or feature but user says "Bug Fix" -> "The issue looks like an enhancement/feature, but you described a bug fix. Which is correct?"
    • Bug Fix -> Bug Fix path: PLAN -> RCA -> CODE (Architect optional -> Design -> Implement) -> BUILD -> TEST -> RELEASE (Review Loop -> PR)
    • Enhancement / New Feature -> Standard Feature path: PLAN -> CODE (Architect -> Design -> Implement) -> BUILD -> TEST -> RELEASE (Review Loop -> PR)
    • Tooling / CI / Build / Docs -> Project Infrastructure path: PLAN -> CODE -> BUILD/CI -> TEST -> RELEASE (Review Loop -> PR)
    • Refactoring / cleanup -> Refactoring path: PLAN -> CODE -> BUILD -> TEST -> RELEASE (Review Loop -> PR)

After determining the path, inform the user which path was selected and present the handoff button.

User Review & Confirmation Gate

Based on the determined path, ask the user to click the appropriate button:

  • Start Issue Planning -- for new contribution ideas or GitHub issue creation
  • Start Technical Analysis -- for breaking down a GitHub issue into implementation-ready work
  • Start PLAN -- for implementing an existing GitHub issue
  • Start CODE (PoC / Spike) -- for prototypes confirmed as non-production

S-CORE Open-Source Contribution Rules

  • Prefer GitHub issues and pull requests as the source of truth.
  • Preserve traceability from issue -> design/analysis notes -> implementation -> tests -> pull request.
  • Respect Eclipse Foundation and project contribution expectations.
  • Keep recommendations repository-local unless the user explicitly asks for cross-repository coordination.
  • When a contribution touches architecture, safety/security-relevant behavior, public APIs, build systems, toolchains, or process documentation, route through technical analysis before implementation.
  • For production-quality changes, do not skip build, test, review, license, and CI expectations.
  • Do not use or request proprietary MB-internal information.
  • Do not mention Jira, Atlassian, Epics, internal project codes, internal approval boards, or company-specific workflows.

Rules

  • Do NOT hand off automatically.
  • Do NOT proceed without user confirmation.
  • Always determine the path BEFORE handing off to the first agent.
  • If GitHub access/tools are unavailable, ask the user to paste the relevant issue text, PR text, repository path, or documentation excerpt.

Comment thread AGENTS.md
- **Stay in scope:** edit only the nearest feature's files; keep changes traceable (requirement → arch → test).
- **Compliance:** respect ISO 26262 / ISO 21434 / ASPICE intent; flag, don't bypass, safety-relevant checks.

## 9. Links

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

There is no link to PMP documents as well as process description at all?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

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

Labels

None yet

Projects

Status: Backlog
Status: No status

Development

Successfully merging this pull request may close these issues.

4 participants