Amplifier Observer Bundle
February 1, 2026 ยท View on GitHub
Get automatic file and conversation review as you work, with specialized AI observers that watch for issues and provide actionable feedback.
What This Does For You
While you're working with Amplifier, observers run automatically in the background, reviewing your files and conversations. They catch issues early, suggest improvements, and help you maintain quality without interrupting your flow.
Think of observers as expert colleagues looking over your shoulder - a security expert watching for vulnerabilities, a performance specialist checking for bottlenecks, a systems thinker surfacing unintended consequences.
How It Works
- You work normally - Write code, have conversations, make decisions
- Observers activate automatically - After each response, observers check for changes
- You get targeted feedback - Observations appear with severity levels (critical, high, medium, low, info)
- You address what matters - Focus on high-severity issues, handle others when convenient
Quick Start
Important: This bundle must be used as a top-level bundle (loaded directly with amplifier run). It cannot be included in other bundles because it provides an orchestrator.
Use a Pre-Built Example
We've created 6 ready-to-use bundles for common scenarios:
# Systems thinking for architecture and decision-making
amplifier bundle add \
"git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=examples/systems-thinking.md" \
--name systems-thinking
amplifier run -B systems-thinking
# Code quality for Python development
amplifier bundle add \
"git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=examples/simple-observer.md" \
--name code-review
amplifier run -B code-review
# Full-stack web development review
amplifier bundle add \
"git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=examples/full-stack-review.md" \
--name full-stack
amplifier run -B full-stack
Or run directly without registering:
amplifier run --bundle "git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=examples/systems-thinking.md"
Available Examples
| Bundle | Best For |
|---|---|
| simple-observer | Minimal setup - just code quality for Python |
| multi-observer | Comprehensive code review (security, performance, tests) |
| systems-thinking | Architecture discussions and complex decisions |
| writing-review | Documentation, emails, and written content |
| tiered-review | Fast scans + deep analysis (Haiku + Sonnet) |
| full-stack-review | Complete web development review (Python, TypeScript, React, SQL, API design) |
Each example is ready to use as-is or copy and customize for your needs.
50+ Pre-Built Observers
The observers/ directory contains specialized observers you can reference in your own bundles:
Code & Technical
code-quality- Code smells, long functions, complexitypython-best-practices- Python-specific patternstypescript-reviewer- TypeScript and type safetyreact-reviewer- React patterns and hookssql-reviewer- SQL patterns and query optimizationasync-patterns- Async/await usage and concurrencyerror-handling- Exception handling patternstest-quality- Test coverage and assertions
Security & Reliability
security-auditor- Vulnerabilities and unsafe patternssecurity-design-reviewer- Security architecturesecrets-scanner- Hardcoded credentials and API keysperformance-reviewer- Bottlenecks and optimizationreliability-reviewer- Fault tolerance and resiliencedependency-reviewer- Dependency health and risks
Architecture & Design
architecture-reviewer- System structure and modularityapi-design- API contracts and consistencydata-design-reviewer- Data models and schemasboundary-analyzer- Module boundaries and couplingsimplicity-guardian- Unnecessary complexityscalability-reviewer- Growth and scaling concerns
Systems Thinking
systems-dynamics- Feedback loops and system behaviorsecond-order-effects- Unintended consequencesleverage-points- High-impact interventionsbias-detector- Cognitive biases in reasoningstakeholder-analyzer- People and incentivesmental-models- Assumptions and frameworksroot-cause-analyzer- Problem diagnosis
Documentation & Communication
writing-quality- Clarity, tone, structuredocumentation-checker- Docs completeness and accuracycommunication-reviewer- Team communication patternsaccessibility-checker- Inclusive design and contentmeeting-notes- Meeting effectiveness and action items
Process & Planning
task-completion- Task tracking and follow-throughplanning-reviewer- Planning quality and realismdecision-reviewer- Decision-making processtradeoff-analyzer- Trade-off analysisrequirements-analyzer- Requirements clarityresearch-reviewer- Research methodology
Operations & Deployment
operational-reviewer- Deployment and monitoringmigration-reviewer- Migration safety and planningintegration-reviewer- Integration patternsconfig-reviewer- Configuration managementgit-hygiene- Git workflow and commit qualitycost-reviewer- Cost implications and optimization
See each observer file in observers/ for specific focus areas and severity guidelines.
Building Your Own Bundle
Copy an example and customize:
# Copy an example to start
cp examples/simple-observer.md my-custom-bundle.md
# Edit the observers section to use the ones you need
Example configuration:
hooks:
- module: hooks-observations
source: git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=modules/hooks-observations
config:
hooks:
- trigger: "orchestrator:complete"
priority: 5
observers:
# Reference observers from this bundle
- observer: observers:observers/security-auditor"
watch:
- type: files
paths: ["**/*.py"]
- observer: observers:observers/performance-reviewer"
watch:
- type: files
paths: ["src/**/*.py"]
tools:
- module: tool-observations
source: git+https://github.com/microsoft/amplifier-bundle-observers@main#subdirectory=modules/tool-observations
How Observations Work
Observers create observations with:
- Severity: critical, high, medium, low, info
- Category: What type of issue (security, performance, etc.)
- Message: What's wrong and why it matters
- Location: File and line number (for code observations)
- Suggestion: How to fix it
You can query observations during your session:
"Show me high-severity observations"
"What security issues did the observer find?"
"List all observations for auth.py"
Observer Types
File Observers
Watch for changes to specific files and review them:
watch:
- type: files
paths: ["**/*.py", "src/**/*.ts"]
Conversation Observers
Analyze discussions, decisions, and reasoning:
watch:
- type: conversation
include_reasoning: true # See the thinking process
Architecture
Observers use a hook-based architecture:
- hooks-observations - Orchestrates observers when events trigger
- tool-observations - Manages observation storage and querying
- Observer definitions - Specialized review prompts in
observers/
When orchestrator:complete fires, the hook:
- Detects what changed (files or conversation)
- Activates matching observers
- Each observer calls the LLM directly to analyze
- Observations are stored for later reference
Contributing
Note
This project is not currently accepting external contributions, but we're actively working toward opening this up. We value community input and look forward to collaborating in the future. For now, feel free to fork and experiment!
Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit Contributor License Agreements.
When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.
Trademarks
This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies.