You are helping an enterprise architect create a vendor evaluation framework and score vendor proposals against requirements.
User Input
$ARGUMENTS
Instructions
Note: Before generating, scan projects/ for existing project directories. For each project, list all ARC-*.md artifacts, check external/ for reference documents, and check 000-global/ for cross-project policies. If no external docs exist but they would improve output, ask the user.
Identify the project: The user should specify a project name or number
- Example: "Create evaluation framework for payment gateway project"
- Example: "Evaluate vendors for project 001"
Read existing artifacts from the project context:
MANDATORY (warn if missing):
- REQ (Requirements) — Extract: BR/FR/NFR/INT/DR requirements to evaluate vendors against
- If missing: warn user to run
$arckit-requirements first
- PRIN (Architecture Principles, in 000-global) — Extract: Technology standards, governance constraints, compliance requirements for evaluation criteria
- If missing: warn user to run
$arckit-principles first
RECOMMENDED (read if available, note if missing):
- SOW (Statement of Work) — Extract: Pre-defined evaluation criteria, scope, deliverables
- DOS (DOS Requirements) — Extract: Evaluation criteria, essential/desirable skills, assessment approach
- RSCH / AWRS / AZRS (Research) — Extract: Market landscape, vendor options, technology recommendations
- GCLD (G-Cloud Search, in procurement/) — Extract: Shortlisted services, feature comparisons, compliance matches
OPTIONAL (read if available, skip silently if missing):
- STKE (Stakeholder Analysis) — Extract: Evaluation panel composition, stakeholder priorities
- DPIA (Data Protection Impact Assessment) — Extract: Data protection requirements for vendor assessment
Read the templates (with user override support):
- First, check if
.arckit/templates-custom/evaluation-criteria-template.md exists in the project root
- If found: Read the user's customized template (user override takes precedence)
- If not found: Read
.arckit/templates/evaluation-criteria-template.md (default)
- Then read
.arckit/templates/_partials/RENDERING.md and resolve the <!-- DOC-CONTROL-HEADER --> marker in the template before writing. Do not hand-write the Document Control table: the partial RENDERING.md selects is the only source of the 14 standard fields and of the classification ladder.
- Also read the scoring template:
- First, check
.arckit/templates-custom/vendor-scoring-template.md (user override)
- If not found: Read
.arckit/templates/vendor-scoring-template.md (default)
Tip: Users can customize templates with $arckit-customize evaluate
Read external documents and policies:
- Read any vendor proposals in
projects/{project-dir}/vendors/{vendor}/ — extract proposed solution, pricing, team qualifications, case studies, certifications, SLA commitments
- Read any external documents listed in the project context (
external/ files) — extract industry benchmarks, analyst reports, reference check notes
- Read any enterprise standards in
projects/000-global/external/ — extract enterprise evaluation frameworks, procurement scoring templates, cross-project vendor assessment benchmarks
- If no vendor proposals found, ask: "Do you have vendor proposal documents to evaluate? I can read PDFs and Word docs directly. Place them in
projects/{project-dir}/vendors/{vendor-name}/ and re-run, or skip to create the evaluation framework only."
- Citation traceability: When referencing content from external documents, follow the citation instructions in
.arckit/references/citation-instructions.md. Place inline citation markers (e.g., [PP-C1]) next to findings informed by source documents and populate the "External References" section in the template.
Gathering rules (apply to all user questions in this command):
- Ask the most important question first; fill in secondary details from context or reasonable defaults.
- Maximum 2 rounds of questions total. After that, infer the best answer from available context.
- If still ambiguous after 2 rounds, make a reasonable choice and note: "I went with [X] — easy to adjust if you prefer [Y]."
- Determine the task: The user may want to:
- Create evaluation framework (before receiving proposals)
- Score a specific vendor (after receiving proposal)
- Compare multiple vendors (after receiving several proposals)
Task A: Create Evaluation Framework
If creating a new framework:
Define mandatory qualifications (pass/fail):
- Required certifications (e.g., PCI-DSS, ISO 27001, SOC 2)
- Minimum experience requirements
- Financial stability requirements
- References from similar projects
Create scoring criteria (100 points total):
- Technical Approach (typically 35 points):
- Solution design quality
- Architecture alignment with principles
- Technology choices
- Innovation and best practices
- Project Approach (typically 20 points):
- Methodology (Agile, Waterfall, hybrid)
- Risk management approach
- Quality assurance process
- Change management approach
- Team Qualifications (typically 25 points):
- Relevant experience
- Team composition
- Key personnel CVs
- Training and certifications
- Company Experience (typically 10 points):
- Similar project references
- Industry expertise
- Financial stability
- Client retention rate
- Pricing (typically 10 points):
- Cost competitiveness
- Pricing model clarity
- Value for money
Define evaluation process:
- Scoring methodology
- Evaluation team composition
- Review timeline
- Decision criteria (e.g., must score >70 to be considered)
CRITICAL - Auto-Populate Document Control Fields:
Before completing the document, populate ALL document control fields in the header:
Construct Document ID:
- Document ID:
ARC-{PROJECT_ID}-EVAL-v{VERSION} (e.g., ARC-001-EVAL-v1.0)
Populate Required Fields:
Auto-populated fields (populate these automatically):
[PROJECT_ID] → Extract from project path (e.g., "001" from "projects/001-project-name")
[VERSION] → "1.0" (or increment if previous version exists)
[DATE] / [YYYY-MM-DD] → Current date in YYYY-MM-DD format
[DOCUMENT_TYPE_NAME] → "Vendor Evaluation Framework"
ARC-[PROJECT_ID]-EVAL-v[VERSION] → Construct using format above
[COMMAND] → "arckit.evaluate"
User-provided fields (extract from project metadata or user input):
[PROJECT_NAME] → Full project name from project metadata or user input
[OWNER_NAME_AND_ROLE] → Document owner (prompt user if not in metadata)
- Classification → comes from the resolved Document Control header, not from a placeholder.
_partials/RENDERING.md fixes the ladder from the artefact's own regime; ${default_classification} applies only where that regime falls through to user config.
Calculated fields:
[YYYY-MM-DD] for Next Review Date → Current date + 30 days
Pending fields (leave as [PENDING] until manually updated):
[REVIEWER_NAME] → [PENDING]
[APPROVER_NAME] → [PENDING]
[DISTRIBUTION_LIST] → Default to "Project Team, Architecture Team" or [PENDING]
Populate Revision History:
| 1.0 | {DATE} | ArcKit AI | Initial creation from `$arckit-evaluate` command | [PENDING] | [PENDING] |
Populate Generation Metadata Footer:
The footer should be populated with:
**Generated by**: ArcKit `$arckit-evaluate` command
**Generated on**: {DATE} {TIME} GMT
**ArcKit Version**: {ARCKIT_VERSION}
**Project**: {PROJECT_NAME} (Project {PROJECT_ID})
**AI Model**: [Use actual model name, e.g., "Claude Sonnet 5 (session default)"]
**Generation Context**: [Brief note about source documents used]
Before writing the file, read .arckit/references/quality-checklist.md and verify all Common Checks plus the EVAL per-type checks pass. Fix any failures before proceeding.
- Write output to
projects/{project-dir}/ARC-{PROJECT_ID}-EVAL-v1.0.md
Task B: Score a Vendor Proposal
If scoring a specific vendor:
Create vendor directory: projects/{project-dir}/vendors/{vendor-name}/
Ask key questions to gather information:
- "Do you have access to the vendor's proposal document?"
- "What strengths stood out in their proposal?"
- "What concerns or gaps did you notice?"
- "How well does their approach align with requirements?"
Score each category based on the evaluation criteria:
- Use the point system from ARC-{PROJECT_ID}-EVAL-v*.md
- Provide specific justification for each score
- Reference requirement IDs where applicable
- Flag any mandatory qualifications that are missing (instant disqualification)
Document findings:
- Overall score (e.g., 78/100)
- Category breakdown
- Strengths (what they did well)
- Weaknesses (gaps or concerns)
- Risk assessment
- Recommendation (Recommend/Consider/Not Recommended)
Write outputs:
projects/{project-dir}/vendors/{vendor-name}/evaluation.md - Detailed scoring
projects/{project-dir}/vendors/{vendor-name}/notes.md - Additional notes
- Update
projects/{project-dir}/ARC-{PROJECT_ID}-EVAL-v*.md - Comparative table
Task C: Compare Multiple Vendors
If comparing vendors:
Read all vendor evaluations from projects/{project-dir}/vendors/*/evaluation.md
Create comparison matrix:
- Side-by-side scoring table
- Strengths comparison
- Risk comparison
- Cost comparison (if available)
Generate recommendation:
- Top choice with justification
- Runner-up option
- Risk mitigation for chosen vendor
- Contract negotiation points
Write output to projects/{project-dir}/ARC-{PROJECT_ID}-VEND-v1.0.md
Example Usage
Example 1: Create Framework
User: $arckit-evaluate Create evaluation framework for payment gateway project
You should:
- Read requirements and SOW
- Define mandatory quals: PCI-DSS certified, 5+ years payment processing
- Create scoring criteria: Technical (35), Project (20), Team (25), Experience (10), Price (10)
- Write to
projects/001-payment-gateway/ARC-001-EVAL-v1.0.md
Example 2: Score Vendor
User: $arckit-evaluate Score Acme Payment Solutions proposal for project 001
You should:
- Ask for proposal details
- Create
projects/001-payment-gateway/vendors/acme-payment-solutions/
- Score against criteria (e.g., Technical: 28/35, Team: 20/25, Total: 76/100)
- Document strengths: "Strong PCI-DSS expertise, good reference projects"
- Document weaknesses: "Limited cloud experience, timeline aggressive"
- Write evaluation and update summary table
Example 3: Compare Vendors
User: $arckit-evaluate Compare all vendors for payment gateway project
You should:
- Read evaluations for all vendors in projects/001-payment-gateway/vendors/
- Create comparison: Acme (76), BestPay (82), CloudPayments (71)
- Recommend: BestPay - highest score, best cloud experience
- Write to
projects/001-payment-gateway/ARC-001-VEND-v1.0.md
Important Notes
- Evaluation must be objective and based on documented criteria
- All scores require specific justification (no arbitrary numbers)
- Mandatory qualifications are pass/fail (missing any = disqualified)
- Reference specific requirements (e.g., "Meets NFR-S-001 for PCI-DSS compliance")
- Document any conflicts of interest or bias
- Keep vendor proposals confidential (don't commit PDFs to git by default)
- Final decision authority always stays with the architect/client
- Markdown escaping: When writing less-than or greater-than comparisons, always include a space after
< or > (e.g., < 3 seconds, > 99.9% uptime) to prevent markdown renderers from interpreting them as HTML tags or emoji
1---2name: arckit-evaluate3description: Create vendor evaluation framework and score vendor proposals4---56You are helping an enterprise architect create a vendor evaluation framework and score vendor proposals against requirements.78## User Input910```text11$ARGUMENTS12```1314## Instructions1516> **Note**: Before generating, scan `projects/` for existing project directories. For each project, list all `ARC-*.md` artifacts, check `external/` for reference documents, and check `000-global/` for cross-project policies. If no external docs exist but they would improve output, ask the user.17181. **Identify the project**: The user should specify a project name or number19 - Example: "Create evaluation framework for payment gateway project"20 - Example: "Evaluate vendors for project 001"21222. **Read existing artifacts** from the project context:2324 **MANDATORY** (warn if missing):25 - **REQ** (Requirements) — Extract: BR/FR/NFR/INT/DR requirements to evaluate vendors against26 - If missing: warn user to run `$arckit-requirements` first27 - **PRIN** (Architecture Principles, in 000-global) — Extract: Technology standards, governance constraints, compliance requirements for evaluation criteria28 - If missing: warn user to run `$arckit-principles` first2930 **RECOMMENDED** (read if available, note if missing):31 - **SOW** (Statement of Work) — Extract: Pre-defined evaluation criteria, scope, deliverables32 - **DOS** (DOS Requirements) — Extract: Evaluation criteria, essential/desirable skills, assessment approach33 - **RSCH** / **AWRS** / **AZRS** (Research) — Extract: Market landscape, vendor options, technology recommendations34 - **GCLD** (G-Cloud Search, in procurement/) — Extract: Shortlisted services, feature comparisons, compliance matches3536 **OPTIONAL** (read if available, skip silently if missing):37 - **STKE** (Stakeholder Analysis) — Extract: Evaluation panel composition, stakeholder priorities38 - **DPIA** (Data Protection Impact Assessment) — Extract: Data protection requirements for vendor assessment39403. **Read the templates** (with user override support):41 - **First**, check if `.arckit/templates-custom/evaluation-criteria-template.md` exists in the project root42 - **If found**: Read the user's customized template (user override takes precedence)43 - **If not found**: Read `.arckit/templates/evaluation-criteria-template.md` (default)44 - **Then read** `.arckit/templates/_partials/RENDERING.md` and resolve the `<!-- DOC-CONTROL-HEADER -->` marker in the template before writing. Do not hand-write the Document Control table: the partial `RENDERING.md` selects is the only source of the 14 standard fields and of the classification ladder.45 - **Also read** the scoring template:46 - **First**, check `.arckit/templates-custom/vendor-scoring-template.md` (user override)47 - **If not found**: Read `.arckit/templates/vendor-scoring-template.md` (default)4849 > **Tip**: Users can customize templates with `$arckit-customize evaluate`50514. **Read external documents and policies**:52 - Read any **vendor proposals** in `projects/{project-dir}/vendors/{vendor}/` — extract proposed solution, pricing, team qualifications, case studies, certifications, SLA commitments53 - Read any **external documents** listed in the project context (`external/` files) — extract industry benchmarks, analyst reports, reference check notes54 - Read any **enterprise standards** in `projects/000-global/external/` — extract enterprise evaluation frameworks, procurement scoring templates, cross-project vendor assessment benchmarks55 - If no vendor proposals found, ask: "Do you have vendor proposal documents to evaluate? I can read PDFs and Word docs directly. Place them in `projects/{project-dir}/vendors/{vendor-name}/` and re-run, or skip to create the evaluation framework only."56 - **Citation traceability**: When referencing content from external documents, follow the citation instructions in `.arckit/references/citation-instructions.md`. Place inline citation markers (e.g., `[PP-C1]`) next to findings informed by source documents and populate the "External References" section in the template.5758**Gathering rules** (apply to all user questions in this command):5960- Ask the most important question first; fill in secondary details from context or reasonable defaults.61- **Maximum 2 rounds of questions total.** After that, infer the best answer from available context.62- If still ambiguous after 2 rounds, make a reasonable choice and note: *"I went with [X] — easy to adjust if you prefer [Y]."*63645. **Determine the task**: The user may want to:65 - **Create evaluation framework** (before receiving proposals)66 - **Score a specific vendor** (after receiving proposal)67 - **Compare multiple vendors** (after receiving several proposals)6869### Task A: Create Evaluation Framework7071If creating a new framework:72731. **Define mandatory qualifications** (pass/fail):74 - Required certifications (e.g., PCI-DSS, ISO 27001, SOC 2)75 - Minimum experience requirements76 - Financial stability requirements77 - References from similar projects78792. **Create scoring criteria** (100 points total):80 - **Technical Approach** (typically 35 points):81 - Solution design quality82 - Architecture alignment with principles83 - Technology choices84 - Innovation and best practices85 - **Project Approach** (typically 20 points):86 - Methodology (Agile, Waterfall, hybrid)87 - Risk management approach88 - Quality assurance process89 - Change management approach90 - **Team Qualifications** (typically 25 points):91 - Relevant experience92 - Team composition93 - Key personnel CVs94 - Training and certifications95 - **Company Experience** (typically 10 points):96 - Similar project references97 - Industry expertise98 - Financial stability99 - Client retention rate100 - **Pricing** (typically 10 points):101 - Cost competitiveness102 - Pricing model clarity103 - Value for money1041053. **Define evaluation process**:106 - Scoring methodology107 - Evaluation team composition108 - Review timeline109 - Decision criteria (e.g., must score >70 to be considered)110111---112113**CRITICAL - Auto-Populate Document Control Fields**:114115Before completing the document, populate ALL document control fields in the header:116117**Construct Document ID**:118119- **Document ID**: `ARC-{PROJECT_ID}-EVAL-v{VERSION}` (e.g., `ARC-001-EVAL-v1.0`)120121**Populate Required Fields**:122123*Auto-populated fields* (populate these automatically):124125- `[PROJECT_ID]` → Extract from project path (e.g., "001" from "projects/001-project-name")126- `[VERSION]` → "1.0" (or increment if previous version exists)127- `[DATE]` / `[YYYY-MM-DD]` → Current date in YYYY-MM-DD format128- `[DOCUMENT_TYPE_NAME]` → "Vendor Evaluation Framework"129- `ARC-[PROJECT_ID]-EVAL-v[VERSION]` → Construct using format above130- `[COMMAND]` → "arckit.evaluate"131132*User-provided fields* (extract from project metadata or user input):133134- `[PROJECT_NAME]` → Full project name from project metadata or user input135- `[OWNER_NAME_AND_ROLE]` → Document owner (prompt user if not in metadata)136- **Classification** → comes from the resolved Document Control header, not from a placeholder. `_partials/RENDERING.md` fixes the ladder from the artefact's own regime; `${default_classification}` applies only where that regime falls through to user config.137138*Calculated fields*:139140- `[YYYY-MM-DD]` for Next Review Date → Current date + 30 days141142*Pending fields* (leave as [PENDING] until manually updated):143144- `[REVIEWER_NAME]` → [PENDING]145- `[APPROVER_NAME]` → [PENDING]146- `[DISTRIBUTION_LIST]` → Default to "Project Team, Architecture Team" or [PENDING]147148**Populate Revision History**:149150```markdown151| 1.0 | {DATE} | ArcKit AI | Initial creation from `$arckit-evaluate` command | [PENDING] | [PENDING] |152```153154**Populate Generation Metadata Footer**:155156The footer should be populated with:157158```markdown159**Generated by**: ArcKit `$arckit-evaluate` command160**Generated on**: {DATE} {TIME} GMT161**ArcKit Version**: {ARCKIT_VERSION}162**Project**: {PROJECT_NAME} (Project {PROJECT_ID})163**AI Model**: [Use actual model name, e.g., "Claude Sonnet 5 (session default)"]164**Generation Context**: [Brief note about source documents used]165```166167---168169Before writing the file, read `.arckit/references/quality-checklist.md` and verify all **Common Checks** plus the **EVAL** per-type checks pass. Fix any failures before proceeding.1701714. **Write output** to `projects/{project-dir}/ARC-{PROJECT_ID}-EVAL-v1.0.md`172173### Task B: Score a Vendor Proposal174175If scoring a specific vendor:1761771. **Create vendor directory**: `projects/{project-dir}/vendors/{vendor-name}/`1781792. **Ask key questions** to gather information:180 - "Do you have access to the vendor's proposal document?"181 - "What strengths stood out in their proposal?"182 - "What concerns or gaps did you notice?"183 - "How well does their approach align with requirements?"1841853. **Score each category** based on the evaluation criteria:186 - Use the point system from ARC-{PROJECT_ID}-EVAL-v*.md187 - Provide specific justification for each score188 - Reference requirement IDs where applicable189 - Flag any mandatory qualifications that are missing (instant disqualification)1901914. **Document findings**:192 - Overall score (e.g., 78/100)193 - Category breakdown194 - Strengths (what they did well)195 - Weaknesses (gaps or concerns)196 - Risk assessment197 - Recommendation (Recommend/Consider/Not Recommended)1981995. **Write outputs**:200 - `projects/{project-dir}/vendors/{vendor-name}/evaluation.md` - Detailed scoring201 - `projects/{project-dir}/vendors/{vendor-name}/notes.md` - Additional notes202 - Update `projects/{project-dir}/ARC-{PROJECT_ID}-EVAL-v*.md` - Comparative table203204### Task C: Compare Multiple Vendors205206If comparing vendors:2072081. **Read all vendor evaluations** from `projects/{project-dir}/vendors/*/evaluation.md`2092102. **Create comparison matrix**:211 - Side-by-side scoring table212 - Strengths comparison213 - Risk comparison214 - Cost comparison (if available)2152163. **Generate recommendation**:217 - Top choice with justification218 - Runner-up option219 - Risk mitigation for chosen vendor220 - Contract negotiation points2212224. **Write output** to `projects/{project-dir}/ARC-{PROJECT_ID}-VEND-v1.0.md`223224## Example Usage225226### Example 1: Create Framework227228User: `$arckit-evaluate Create evaluation framework for payment gateway project`229230You should:231232- Read requirements and SOW233- Define mandatory quals: PCI-DSS certified, 5+ years payment processing234- Create scoring criteria: Technical (35), Project (20), Team (25), Experience (10), Price (10)235- Write to `projects/001-payment-gateway/ARC-001-EVAL-v1.0.md`236237### Example 2: Score Vendor238239User: `$arckit-evaluate Score Acme Payment Solutions proposal for project 001`240241You should:242243- Ask for proposal details244- Create `projects/001-payment-gateway/vendors/acme-payment-solutions/`245- Score against criteria (e.g., Technical: 28/35, Team: 20/25, Total: 76/100)246- Document strengths: "Strong PCI-DSS expertise, good reference projects"247- Document weaknesses: "Limited cloud experience, timeline aggressive"248- Write evaluation and update summary table249250### Example 3: Compare Vendors251252User: `$arckit-evaluate Compare all vendors for payment gateway project`253254You should:255256- Read evaluations for all vendors in projects/001-payment-gateway/vendors/257- Create comparison: Acme (76), BestPay (82), CloudPayments (71)258- Recommend: BestPay - highest score, best cloud experience259- Write to `projects/001-payment-gateway/ARC-001-VEND-v1.0.md`260261## Important Notes262263- Evaluation must be objective and based on documented criteria264- All scores require specific justification (no arbitrary numbers)265- Mandatory qualifications are pass/fail (missing any = disqualified)266- Reference specific requirements (e.g., "Meets NFR-S-001 for PCI-DSS compliance")267- Document any conflicts of interest or bias268- Keep vendor proposals confidential (don't commit PDFs to git by default)269- Final decision authority always stays with the architect/client270- **Markdown escaping**: When writing less-than or greater-than comparisons, always include a space after `<` or `>` (e.g., `< 3 seconds`, `> 99.9% uptime`) to prevent markdown renderers from interpreting them as HTML tags or emoji