Public Access
Make meeting lifecycle stateful
This commit is contained in:
@@ -0,0 +1,14 @@
|
||||
# Configure Summary Agent Instructions
|
||||
|
||||
## Why
|
||||
The summary agent prompt is currently hard-coded, so changing agent behavior requires code changes. Project-specific agent instructions also live in project folders and should be supplied to the summarizer when a meeting is bound to those projects.
|
||||
|
||||
## What Changes
|
||||
- Add a configurable summary agent initial prompt in appsettings.
|
||||
- Keep the current prompt in code as the default when settings do not provide one.
|
||||
- Append project instruction context for meeting-bound projects.
|
||||
- For each bound project with an `AGENTS.md` file in the project folder, append the project name and file content under a `projects:` section.
|
||||
|
||||
## Impact
|
||||
- Changes summary agent prompt construction.
|
||||
- Reads configured project folders and current meeting note frontmatter before starting the summary agent.
|
||||
+33
@@ -0,0 +1,33 @@
|
||||
## ADDED Requirements
|
||||
|
||||
### Requirement: Summary agent instructions are configurable
|
||||
Meeting Assistant SHALL allow the summary agent initial prompt to be configured through application settings.
|
||||
|
||||
When no configured initial prompt is supplied, Meeting Assistant SHALL use the built-in default prompt.
|
||||
|
||||
#### Scenario: Configured initial prompt is used
|
||||
- **WHEN** `MeetingAssistant:Agent:InitialPrompt` is configured with non-empty content
|
||||
- **THEN** the summary agent uses that configured prompt as its base instructions
|
||||
|
||||
#### Scenario: Empty initial prompt falls back to built-in default
|
||||
- **WHEN** `MeetingAssistant:Agent:InitialPrompt` is missing or blank
|
||||
- **THEN** the summary agent uses the built-in default instructions
|
||||
|
||||
### Requirement: Summary agent receives bound project instructions
|
||||
Meeting Assistant SHALL append project instructions to the summary agent instructions for projects bound to the meeting note frontmatter.
|
||||
|
||||
For each bound project folder under the configured projects folder, when an `AGENTS.md` file exists directly in that project folder, Meeting Assistant SHALL append the project name and the `AGENTS.md` content under a project instructions section.
|
||||
|
||||
When no bound projects have `AGENTS.md`, Meeting Assistant SHALL not append the project instructions section.
|
||||
|
||||
#### Scenario: Project AGENTS files are appended
|
||||
- **GIVEN** the meeting note frontmatter lists projects `Alpha` and `Beta`
|
||||
- **AND** both configured project folders contain `AGENTS.md`
|
||||
- **WHEN** the summary agent is created
|
||||
- **THEN** its instructions include `---`, `projects:`, `# Alpha`, Alpha's `AGENTS.md`, `# Beta`, and Beta's `AGENTS.md`
|
||||
|
||||
#### Scenario: Projects without AGENTS files are skipped
|
||||
- **GIVEN** the meeting note frontmatter lists project `Alpha`
|
||||
- **AND** the configured project folder does not contain `AGENTS.md`
|
||||
- **WHEN** the summary agent is created
|
||||
- **THEN** no empty project instruction entry is appended for `Alpha`
|
||||
@@ -0,0 +1,13 @@
|
||||
## 1. Specification
|
||||
- [x] 1.1 Define configurable initial prompt and project instruction append behavior.
|
||||
|
||||
## 2. Implementation
|
||||
- [x] 2.1 Add `Agent.InitialPrompt` setting with the current prompt in appsettings.
|
||||
- [x] 2.2 Keep the current prompt as the code default when no setting is configured.
|
||||
- [x] 2.3 Build summary agent instructions by appending `AGENTS.md` content for bound projects.
|
||||
- [x] 2.4 Use the built instructions when creating the summary agent.
|
||||
|
||||
## 3. Validation
|
||||
- [x] 3.1 Test configurable prompt fallback and override behavior.
|
||||
- [x] 3.2 Test project `AGENTS.md` instruction appendix formatting.
|
||||
- [x] 3.3 Run targeted and full tests.
|
||||
Reference in New Issue
Block a user