@esoteric-logic/praxis-harness 3.1.1 → 3.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: px-prompt
|
|
3
3
|
disable-model-invocation: true
|
|
4
|
-
description: "Unified prompt engine. Creates, generates, condenses, and syncs system prompts for Claude Projects
|
|
4
|
+
description: "Unified prompt engine. Creates, generates, condenses, and syncs system prompts for Claude Projects and Perplexity Spaces. Auto-detects what to do based on project state. Claude Code CLAUDE.md is handled by px-scaffold."
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# px-prompt Skill
|
|
@@ -44,10 +44,11 @@ Platform outputs use suffixed filenames so users can distinguish them at a glanc
|
|
|
44
44
|
| Source (Claude Projects) | `system-prompt.md` | 5,000 chars |
|
|
45
45
|
| Claude Desktop / Projects | `project-instructions-claude-desktop.md` | 2,500 chars |
|
|
46
46
|
| Perplexity Spaces | `space-instructions-perplexity.md` | 4,000 chars |
|
|
47
|
-
| Claude Code | `CLAUDE.md` | 250 lines |
|
|
48
47
|
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
Claude Code `CLAUDE.md` is NOT generated by this skill — use `px-scaffold` for repo-level CLAUDE.md files.
|
|
49
|
+
|
|
50
|
+
All output files live in the project's folder under `prompts/work/` or `prompts/personal/`.
|
|
51
|
+
Reference/knowledge files live in `<project>/references/`.
|
|
51
52
|
|
|
52
53
|
---
|
|
53
54
|
|
|
@@ -130,8 +131,8 @@ Run these rules against the description to auto-populate the project config:
|
|
|
130
131
|
|
|
131
132
|
**Platform inference:**
|
|
132
133
|
- Default: Claude Projects + Perplexity Spaces
|
|
133
|
-
- Add Claude Code if description contains: "code", "repo", "implement", "build", "develop", "engineering", "CLI"
|
|
134
134
|
- Perplexity-only if description contains: "research only", "analysis only", "investigation"
|
|
135
|
+
- Claude Code CLAUDE.md is NOT a px-prompt output — use px-scaffold for that
|
|
135
136
|
|
|
136
137
|
**Mode inference:**
|
|
137
138
|
- If description triggers `maximus-sa` profile → compiled with `maximus-sa`
|
|
@@ -183,7 +184,6 @@ After confirmation:
|
|
|
183
184
|
|
|
184
185
|
**Auto-add context blocks by platform (compiled mode):**
|
|
185
186
|
- Perplexity → `official-docs-first`, `flag-confidence`
|
|
186
|
-
- Claude Code → `vault-integration`, `mcp-servers`, `praxis-workflow`
|
|
187
187
|
|
|
188
188
|
---
|
|
189
189
|
|
|
@@ -361,7 +361,7 @@ For each research domain:
|
|
|
361
361
|
|
|
362
362
|
## Step 3 — CONDENSE: Generate platform outputs from system-prompt.md
|
|
363
363
|
|
|
364
|
-
**Triggered when:** standalone project has `system-prompt.md` but missing `space-instructions-perplexity.md` or `
|
|
364
|
+
**Triggered when:** standalone project has `system-prompt.md` but missing `space-instructions-perplexity.md` or `project-instructions-claude-desktop.md`.
|
|
365
365
|
|
|
366
366
|
Read the full `system-prompt.md` as source.
|
|
367
367
|
|
|
@@ -408,44 +408,18 @@ Think step-by-step: Understand the question → search sources → analyze findi
|
|
|
408
408
|
- Replace absolute language with conditional ("if available", "when sources confirm")
|
|
409
409
|
- Search-friendly domain terms
|
|
410
410
|
|
|
411
|
-
### 3b. Generate Claude
|
|
412
|
-
|
|
413
|
-
**Target:** `CLAUDE.md` | **Budget:** under 250 lines
|
|
414
|
-
|
|
415
|
-
**Include:** identity, behaviors, domain expertise, frameworks (one-line each), operating modes, quality controls, anti-hallucination rules
|
|
416
|
-
**Exclude:** full scoring matrices, templates, reference file content, corporate data tables
|
|
417
|
-
|
|
418
|
-
**Output format:**
|
|
419
|
-
```markdown
|
|
420
|
-
# [Project Name]
|
|
421
|
-
## Identity
|
|
422
|
-
## Behaviors
|
|
423
|
-
## Domain Expertise
|
|
424
|
-
## Frameworks
|
|
425
|
-
## Operating Modes
|
|
426
|
-
## Quality Controls
|
|
427
|
-
## References
|
|
428
|
-
```
|
|
429
|
-
|
|
430
|
-
**Claude Code guardrails:**
|
|
431
|
-
- Positive framing: "Do X" over "Don't do Y"
|
|
432
|
-
- No "CRITICAL: YOU MUST" language (Claude 4.6 overtriggers)
|
|
433
|
-
- Self-check block for quality-critical outputs
|
|
434
|
-
- Reference knowledge files by filename only
|
|
435
|
-
|
|
436
|
-
### 3c. Generate Claude Desktop project instructions (if Claude Projects is a target platform)
|
|
411
|
+
### 3b. Generate Claude Desktop project instructions (if Claude Projects is a target platform)
|
|
437
412
|
|
|
438
413
|
**Target:** `project-instructions-claude-desktop.md` | **Budget:** under 2,500 chars
|
|
439
414
|
|
|
440
415
|
**Include:** role, behavioral constraints, domain expertise (condensed), output format, quality controls, when uncertain
|
|
441
416
|
**Exclude:** full domain details (those go in knowledge files), reference content, deployment details
|
|
442
417
|
|
|
443
|
-
###
|
|
418
|
+
### 3c. Validate budgets
|
|
444
419
|
|
|
445
420
|
After generating, check:
|
|
446
421
|
- `space-instructions-perplexity.md` under 4,000 chars
|
|
447
422
|
- `project-instructions-claude-desktop.md` under 2,500 chars
|
|
448
|
-
- `CLAUDE.md` under 250 lines
|
|
449
423
|
|
|
450
424
|
If over budget: flag and suggest sections to trim.
|
|
451
425
|
|
|
@@ -467,10 +441,9 @@ node bin/prompt-compile.js <project-name>
|
|
|
467
441
|
```
|
|
468
442
|
| Output | Chars | Budget | Status |
|
|
469
443
|
|------------------------------------------|--------|--------|--------|
|
|
470
|
-
| system-prompt.md | X |
|
|
444
|
+
| system-prompt.md | X | 5,000 | Source |
|
|
471
445
|
| project-instructions-claude-desktop.md | X | 2,500 | OK |
|
|
472
446
|
| space-instructions-perplexity.md | X | 4,000 | OK |
|
|
473
|
-
| CLAUDE.md | X lines| 250 ln | OK |
|
|
474
447
|
| references/ | N files| — | Upload |
|
|
475
448
|
```
|
|
476
449
|
|
|
@@ -487,9 +460,6 @@ node bin/prompt-compile.js <project-name>
|
|
|
487
460
|
2. Paste `space-instructions-perplexity.md`
|
|
488
461
|
3. Save
|
|
489
462
|
|
|
490
|
-
**Claude Code:**
|
|
491
|
-
1. Copy `CLAUDE.md` to project repo root
|
|
492
|
-
|
|
493
463
|
### 4d. Offer next actions
|
|
494
464
|
- "Edit the prompt? I'll regenerate platform outputs after."
|
|
495
465
|
- "Want to regenerate? Run `/px-prompt <project-name>` again."
|
|
@@ -508,10 +478,10 @@ node bin/prompt-compile.js --all --diff
|
|
|
508
478
|
|
|
509
479
|
Show summary table:
|
|
510
480
|
```
|
|
511
|
-
| Project |
|
|
512
|
-
|
|
513
|
-
| praxis |
|
|
514
|
-
| maximus | —
|
|
481
|
+
| Project | Claude Desktop | Perplexity | Changes |
|
|
482
|
+
|--------------|-------------------|------------------|------------|
|
|
483
|
+
| praxis | 1,316 ✓ | 1,529 ✓ | none |
|
|
484
|
+
| maximus | — | 3,977 ✓ | standalone |
|
|
515
485
|
```
|
|
516
486
|
|
|
517
487
|
For standalone projects, report validation status instead of compilation status.
|
|
@@ -527,7 +497,7 @@ Print deployment reminders for any project with changes.
|
|
|
527
497
|
### 6a. Read all project files
|
|
528
498
|
1. Read `prompt-config.yaml` for project metadata
|
|
529
499
|
2. Read `system-prompt.md` (source of truth)
|
|
530
|
-
3. Read all platform outputs (`space-instructions-perplexity.md`, `project-instructions-claude-desktop.md
|
|
500
|
+
3. Read all platform outputs (`space-instructions-perplexity.md`, `project-instructions-claude-desktop.md`)
|
|
531
501
|
4. Read all files in `references/` directory
|
|
532
502
|
5. List any other files in the project folder
|
|
533
503
|
|
|
@@ -545,7 +515,6 @@ Check each file against these criteria:
|
|
|
545
515
|
**Budget checks:**
|
|
546
516
|
- `space-instructions-perplexity.md` under 4,000 chars?
|
|
547
517
|
- `project-instructions-claude-desktop.md` under 2,500 chars?
|
|
548
|
-
- `CLAUDE.md` under 250 lines?
|
|
549
518
|
|
|
550
519
|
**Currency checks (via Perplexity):**
|
|
551
520
|
- Are domain-specific terms, standards, and versions still current?
|
|
@@ -771,7 +740,7 @@ Maximus PP: 2 contracts at IRS (from USASpending)
|
|
|
771
740
|
Gaps: Key personnel [RESEARCH NEEDED]
|
|
772
741
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
773
742
|
Files created:
|
|
774
|
-
✓
|
|
743
|
+
✓ project-instructions-claude-desktop.md (2,480 chars)
|
|
775
744
|
✓ space-instructions-perplexity.md (3,976 chars) — deal-specific research domains
|
|
776
745
|
✓ references/irs-masterfile-intel.md
|
|
777
746
|
✓ knowledge/deal-context.md
|
|
@@ -858,7 +827,7 @@ EDIT APPLIED
|
|
|
858
827
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
859
828
|
Changed: <file(s) modified>
|
|
860
829
|
Regenerated: <platform outputs updated>
|
|
861
|
-
Budget: perplexity ✓ | claude-desktop ✓
|
|
830
|
+
Budget: perplexity ✓ | claude-desktop ✓
|
|
862
831
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
863
832
|
```
|
|
864
833
|
|
|
@@ -884,11 +853,11 @@ node bin/prompt-compile.js --dashboard
|
|
|
884
853
|
```
|
|
885
854
|
PROMPT ENGINE DASHBOARD
|
|
886
855
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
887
|
-
Project Mode Perplexity
|
|
888
|
-
|
|
889
|
-
maximus compiled
|
|
890
|
-
elect-azure standalone 2,392 ✓
|
|
891
|
-
praxis compiled 1,
|
|
856
|
+
Project Mode Claude Desktop Perplexity Refs Updated Stale?
|
|
857
|
+
──────────────────────────────────────────────────────────────────────────────
|
|
858
|
+
maximus compiled 4,261 ⚠ 3,976 ✓ 4 2026-04-04 No
|
|
859
|
+
elect-azure standalone — 2,392 ✓ 0 2026-04-04 No
|
|
860
|
+
praxis compiled 1,404 ✓ 1,626 ✓ 0 2026-04-04 No
|
|
892
861
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
893
862
|
|
|
894
863
|
Staleness: projects not updated in >30 days marked stale.
|
|
@@ -978,11 +947,6 @@ Determine which platforms are targets from `prompt-config.yaml`.
|
|
|
978
947
|
5. Print: "Upload these as Space sources (Add Sources → Files):"
|
|
979
948
|
6. **Same knowledge files work for both Claude Projects and Perplexity Spaces** — upload the same set to both
|
|
980
949
|
|
|
981
|
-
**For Claude Code:**
|
|
982
|
-
1. If project has a `repo_root` in vars: `cp CLAUDE.md <repo_root>/CLAUDE.md`
|
|
983
|
-
2. Print: "CLAUDE.md copied to repo root."
|
|
984
|
-
3. If no repo_root: "Copy CLAUDE.md to your project repo root manually."
|
|
985
|
-
|
|
986
950
|
### 11c. Deploy one platform at a time
|
|
987
951
|
|
|
988
952
|
Since clipboard can only hold one thing, deploy sequentially:
|
|
@@ -991,7 +955,7 @@ Since clipboard can only hold one thing, deploy sequentially:
|
|
|
991
955
|
DEPLOY: dha-tricare
|
|
992
956
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
993
957
|
|
|
994
|
-
[1/
|
|
958
|
+
[1/2] Claude Projects
|
|
995
959
|
→ Copied system-prompt.md to clipboard (5,824 chars)
|
|
996
960
|
→ Paste at: claude.ai/projects → Set project instructions
|
|
997
961
|
|
|
@@ -1001,7 +965,7 @@ DEPLOY: dha-tricare
|
|
|
1001
965
|
knowledge/maximus-corporate.md (corporate reference)
|
|
1002
966
|
Press Enter when done...
|
|
1003
967
|
|
|
1004
|
-
[2/
|
|
968
|
+
[2/2] Perplexity Spaces
|
|
1005
969
|
→ Copied space-instructions-perplexity.md to clipboard (3,965 chars)
|
|
1006
970
|
→ Paste at: perplexity.ai → Space Settings → Answer Instructions
|
|
1007
971
|
|
|
@@ -1011,12 +975,8 @@ DEPLOY: dha-tricare
|
|
|
1011
975
|
knowledge/maximus-corporate.md (corporate reference)
|
|
1012
976
|
Press Enter when done...
|
|
1013
977
|
|
|
1014
|
-
[3/3] Claude Code
|
|
1015
|
-
→ CLAUDE.md → /path/to/repo/CLAUDE.md
|
|
1016
|
-
Done.
|
|
1017
|
-
|
|
1018
978
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
1019
|
-
DEPLOYED to
|
|
979
|
+
DEPLOYED to 2 platforms.
|
|
1020
980
|
Knowledge files uploaded to BOTH Claude Projects and Perplexity Spaces.
|
|
1021
981
|
```
|
|
1022
982
|
|
|
@@ -1138,17 +1098,15 @@ NEXT GATE CHECKLIST: Pre-Proposal
|
|
|
1138
1098
|
- Quality Controls section with Anti-Hallucination Protocol is **mandatory** in all generated prompts
|
|
1139
1099
|
- Accuracy Standards section is mandatory in all Perplexity outputs
|
|
1140
1100
|
- When Uncertain section with confidence levels is mandatory in all outputs
|
|
1141
|
-
- Never ask for repo URL, vault path, or git email unless Claude Code is a target platform
|
|
1142
1101
|
- **Never hardcode project names in menus or options** — discover dynamically
|
|
1143
1102
|
|
|
1144
1103
|
### Platform-specific
|
|
1145
1104
|
- **Perplexity**: no few-shot examples, no URLs, conditional language, search-friendly terms
|
|
1146
|
-
- **Claude Code**: positive framing, no "CRITICAL YOU MUST", self-check blocks
|
|
1147
1105
|
- **Claude Desktop / Projects**: 7-layer skeleton (Role, Constraints, Expertise, Format, Knowledge Rules, Quality Controls, When Uncertain)
|
|
1106
|
+
- **Claude Code CLAUDE.md**: NOT generated by px-prompt — use px-scaffold
|
|
1148
1107
|
|
|
1149
1108
|
### File naming
|
|
1150
1109
|
- **Always** use platform-suffixed filenames: `space-instructions-perplexity.md`, `project-instructions-claude-desktop.md`
|
|
1151
|
-
- `CLAUDE.md` keeps its name (convention for Claude Code)
|
|
1152
1110
|
- `system-prompt.md` keeps its name (it's the source of truth, not platform-specific)
|
|
1153
1111
|
|
|
1154
1112
|
### Quality defaults (mandatory in all generated prompts)
|
|
@@ -1179,5 +1137,4 @@ NEXT GATE CHECKLIST: Pre-Proposal
|
|
|
1179
1137
|
- See Step 1b for full inference rules (role, domain, platform, mode, research domains)
|
|
1180
1138
|
- If no domain blocks match → standalone mode with AI generation, not compiled with empty blocks
|
|
1181
1139
|
- Auto-add `official-docs-first` + `flag-confidence` for Perplexity targets (compiled mode)
|
|
1182
|
-
- Auto-add `vault-integration` + `mcp-servers` + `praxis-workflow` for Claude Code targets (compiled mode)
|
|
1183
1140
|
- **Maximum 1 question** for new projects (description). Show confirmation card, not a questionnaire.
|
package/package.json
CHANGED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
# ELECT Azure Architecture
|
|
2
|
-
|
|
3
|
-
## Identity
|
|
4
|
-
Senior Enterprise Architect for the Virginia Department of Elections (ELECT). Focus: Azure cloud architecture, ADRs, design documents, and solution assessments aligned with VITA standards.
|
|
5
|
-
|
|
6
|
-
## Behaviors
|
|
7
|
-
- Be direct and structured. No filler.
|
|
8
|
-
- Every option includes a recommendation with rationale.
|
|
9
|
-
- Cite specific VITA policy numbers and Azure framework pillars — not vague "best practices."
|
|
10
|
-
- Distinguish VITA-mandated requirements from Azure recommendations.
|
|
11
|
-
- Flag conflicts between VITA standards and Azure guidance with a resolution path.
|
|
12
|
-
- State uncertainty explicitly. Identify which document would resolve the question.
|
|
13
|
-
- Structure analytical outputs as: What → So What → Now What.
|
|
14
|
-
|
|
15
|
-
## Domain Expertise
|
|
16
|
-
|
|
17
|
-
### Azure Architecture
|
|
18
|
-
- Well-Architected Framework: Reliability, Security, Cost Optimization, Operational Excellence, Performance Efficiency
|
|
19
|
-
- Cloud Adoption Framework: Strategy, Plan, Ready, Adopt, Govern, Secure, Manage
|
|
20
|
-
- Landing zones, Entra ID federation, network segmentation, Azure Policy
|
|
21
|
-
- Azure AI Foundry (relevant to VITA AI Registry compliance)
|
|
22
|
-
|
|
23
|
-
### VITA Standards
|
|
24
|
-
- EA200: Enterprise Architecture Policy — IT investment and acquisition governance
|
|
25
|
-
- EA225: Enterprise Architecture Standard — technology roadmaps, four-component model (Business, Information, Solutions, Technical)
|
|
26
|
-
- EA300: Cloud Based Hosting Services Policy
|
|
27
|
-
- SEC530: Information Security Standard — cybersecurity baseline, CSRM enforcement
|
|
28
|
-
- EO 30: AI governance — mandatory AI Registry, approval workflow, annual recertification, public disclosure
|
|
29
|
-
- AIGF: Architecture & Innovation Governance Forum for exception requests
|
|
30
|
-
- Archer: GRC platform for security assessments and architecture reviews
|
|
31
|
-
|
|
32
|
-
### ELECT Systems
|
|
33
|
-
- VERIS: statewide voter registration database, 133 local registrars, 2FA + IP verification
|
|
34
|
-
- ePollTab: offline electronic pollbook (VERIS data snapshots)
|
|
35
|
-
- Unisyn OpenElect: voting hardware/software (FVS, OVI, OVCS, OCS)
|
|
36
|
-
|
|
37
|
-
### Commonwealth Context
|
|
38
|
-
- NTT DATA + Microsoft: Azure cloud modernization for VITA (March 2025)
|
|
39
|
-
- All agencies migrating to Microsoft 365 (Teams, SharePoint, Power Platform)
|
|
40
|
-
- Consumption-based cost model, SEC530-compliant security posture
|
|
41
|
-
|
|
42
|
-
## Document Formats
|
|
43
|
-
|
|
44
|
-
### ADRs
|
|
45
|
-
Title, Status, Context, Decision, Consequences, Compliance Notes (VITA reference)
|
|
46
|
-
|
|
47
|
-
### Design Documents
|
|
48
|
-
Problem Statement, Constraints, Options Considered (with recommendation), Solution Design, Security Considerations, VITA Compliance Mapping
|
|
49
|
-
|
|
50
|
-
## Quality Controls
|
|
51
|
-
Before finalizing any architecture deliverable:
|
|
52
|
-
- Verify VITA policy references are correctly numbered
|
|
53
|
-
- Confirm Azure service names match current naming (e.g., Entra ID not Azure AD)
|
|
54
|
-
- Check that compliance mappings trace to specific requirements, not general categories
|
|
55
|
-
- Ensure election-specific security considerations are addressed for ELECT workloads
|
|
56
|
-
|
|
57
|
-
## References
|
|
58
|
-
- VITA Policies & Standards: vita.virginia.gov/policy--governance
|
|
59
|
-
- Azure WAF: learn.microsoft.com/azure/well-architected
|
|
60
|
-
- Azure CAF: learn.microsoft.com/azure/cloud-adoption-framework
|
|
61
|
-
- ELECT: elections.virginia.gov
|