بنقرة واحدة
ratecard
Generate professional rate card document from service definition with pricing validation
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Generate professional rate card document from service definition with pricing validation
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
Build a complete resume through all 3 steps (draft, provenance check, final)
Initialize JobOps workspace - configure output directories, install templates, and optionally migrate legacy files
Assess candidate against job posting using pre-created scoring rubric
Compare assessment files across application folders under applications_root
Interview-driven generation of three market-validated ideal-role archetypes (Anchor, Stretch, Pivot) from career history, elicited preferences, and high-scoring assessment patterns
Generate a strategic cover letter with requirements-matching table from Step 3 resume
| name | ratecard |
| description | Generate professional rate card document from service definition with pricing validation |
| disable-model-invocation | true |
Read .jobops/config.json. If missing, stop with:
JOBOPS NOT CONFIGURED Run /jobops:setup (then /jobops-ic:setup) to initialize your workspace.
Use config.directories.contractor_root for output paths in this skill.
Use config.preferences.default_currency for pricing if applicable.
Generate professional rate card from service definition with pricing validation.
$1: Format (default: md): md | pdf | html$2: Currency (default: CAD): CAD | USD$3: --include-justification to add credentials/ROI sectionFind most recent: {config.directories.contractor_root}/services/service_definition_*.md
If not found:
PREREQUISITE MISSING: Service Definition
Run /defineservices first to create service catalog and pricing.
Load and validate:
If rate_card missing:
INVALID SERVICE DEFINITION: Missing Rate Card
Required structure:
## Rate Card
### Hourly Rates
- **Minimum**: $[X]/hr
- **Target**: $[Y]/hr
- **Premium**: $[Z]/hr
### Daily Rates
- **Minimum**: $[A]/day
- **Target**: $[B]/day
- **Premium**: $[C]/day
Fix with: /defineservices --update
For rate-card generation, read these source files:
Preferences/Vision.md — explicit rate preferences if user has stated them (overrides market research)Technology/TechStack.md — identify Expert-level skills (judged in-context from WorkHistory mentions, not from a precomputed enum)Technology/Certifications.md — Active certifications onlyWorkHistory/*.md — for years of experience, leadership scope, budget magnitudeCompute years_total_experience from earliest WorkHistory Start date to today. Do NOT load candidate_profile.json — removed in v2.2.0.
Check 1: Daily Rate Consistency
daily_rate ~ hourly_rate x 8 (+/-10% tolerance)Check 2: Rate Tier Progression
minimum < target < premium (both hourly and daily)Check 3: Premium Multiplier
1.3x <= premium/target <= 2.0xCheck 4: Retainer Discounts (if applicable)
Display results:
PRICING VALIDATION COMPLETE
- Daily rates align with hourly x 8
- Rate tiers ascending
- Premium multiplier reasonable (1.3x-2.0x)
[Advisory warnings if any]
[Auto-corrections if any]
--include-justification flagIf output currency != service definition currency:
YAML Frontmatter:
consultant: "[Name]"
effective_date: [YYYY-MM-DD]
valid_until: [+6 months]
currency: [CAD|USD]
generated_on: [ISO8601]
pricing_validated: [true/false]
source_definition: "{config.directories.contractor_root}/services/service_definition_[Date].md"
Sections:
Save to: {config.directories.contractor_root}/rate-cards/rate_card_[YYYYMMDD].md
CSS Styling (embedded):
HTML Structure:
If format is pdf:
/tmp/ratecard_temp_[timestamp].htmlmcp__playwright__browser_navigate to file://[tmp_html]browser_run_code:
await page.pdf({
path: '{config.directories.contractor_root}/rate-cards/rate_card_[YYYYMMDD].pdf',
format: 'Letter',
printBackground: true,
margin: { top: '0.75in', bottom: '0.75in', left: '0.75in', right: '0.75in' }
});
If PDF fails: Fallback to HTML with manual conversion instructions
If format is html:
{config.directories.contractor_root}/rate-cards/rate_card_[YYYYMMDD].html and skip Phase 5PROFESSIONAL RATE CARD GENERATED
**Output:** {config.directories.contractor_root}/rate-cards/rate_card_[YYYYMMDD].[format] ([XX] KB)
**Source:** service_definition_[Date].md
**Pricing:**
Hourly: $[min]-$[premium]/hr ([Currency])
Daily: $[min]-$[premium]/day
[Retainer: $[min]-$[max]/mo]
**Services:** [X] offerings ([List names])
**Validation:**
- Daily = hourly x 8 (+/-10%)
- Tiers ascending
- Premium multiplier: [X.X]x
[Auto-corrections: [count] | Warnings: [count]]
**Validity:** [Start] to [End] (6 months)
[Currency conversion note if applicable]
[Credentials section if --include-justification]
**Next Steps:**
1. Review for accuracy
2. Customize: Company-specific terms, volume discounts, special tiers
3. Distribute: Email PDF, host HTML, include in proposals
4. Maintain: Quarterly reviews, annual updates
5. Related: /defineservices --update, /proposaltemplate, /findclient
**Rate Card Summary:**
================================================================
[CONSULTANT] | [CURRENCY] | VALID: [Start] to [End]
----------------------------------------------------------------
Hourly: $[min]/hr | $[target]/hr | $[premium]/hr
Daily: $[min]/day | $[target]/day | $[premium]/day
[Retainer: Part-time $[X]/mo, Half-time $[Y]/mo, Full-time $[Z]/mo]
----------------------------------------------------------------
PAYMENT: [Deposit]% upfront, Net [days] | MINIMUM: [hours]
================================================================
Missing Prerequisites:
Validation Failures:
Generation Failures:
Pricing Validation Philosophy:
Rate Card Best Practices:
Playwright PDF Pattern: Same as /formatresume - HTML with embedded CSS -> temp file -> navigate -> page.pdf() -> cleanup
Now executing rate card generation with format $1, currency $2, and justification flag $3...