olympus-ai 3.2.2 ā 3.3.0
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.
- package/.claude-plugin/plugin.json +1 -1
- package/dist/__tests__/ascent-checkpoint.test.d.ts +2 -0
- package/dist/__tests__/ascent-checkpoint.test.d.ts.map +1 -0
- package/dist/__tests__/ascent-checkpoint.test.js +261 -0
- package/dist/__tests__/ascent-checkpoint.test.js.map +1 -0
- package/dist/__tests__/config-ascent.test.d.ts +2 -0
- package/dist/__tests__/config-ascent.test.d.ts.map +1 -0
- package/dist/__tests__/config-ascent.test.js +134 -0
- package/dist/__tests__/config-ascent.test.js.map +1 -0
- package/dist/__tests__/hook-blocking.test.d.ts +8 -0
- package/dist/__tests__/hook-blocking.test.d.ts.map +1 -0
- package/dist/__tests__/hook-blocking.test.js +277 -0
- package/dist/__tests__/hook-blocking.test.js.map +1 -0
- package/dist/__tests__/installer.test.js +1 -1
- package/dist/__tests__/metrics-cli.test.d.ts +5 -0
- package/dist/__tests__/metrics-cli.test.d.ts.map +1 -0
- package/dist/__tests__/metrics-cli.test.js +24 -0
- package/dist/__tests__/metrics-cli.test.js.map +1 -0
- package/dist/__tests__/skill-auto-detection.test.d.ts +2 -0
- package/dist/__tests__/skill-auto-detection.test.d.ts.map +1 -0
- package/dist/__tests__/skill-auto-detection.test.js +255 -0
- package/dist/__tests__/skill-auto-detection.test.js.map +1 -0
- package/dist/__tests__/token-estimator.test.d.ts +5 -0
- package/dist/__tests__/token-estimator.test.d.ts.map +1 -0
- package/dist/__tests__/token-estimator.test.js +192 -0
- package/dist/__tests__/token-estimator.test.js.map +1 -0
- package/dist/agents/definitions.d.ts.map +1 -1
- package/dist/agents/definitions.js +83 -1
- package/dist/agents/definitions.js.map +1 -1
- package/dist/agents/document-writer.d.ts.map +1 -1
- package/dist/agents/document-writer.js +38 -0
- package/dist/agents/document-writer.js.map +1 -1
- package/dist/agents/frontend-engineer.d.ts.map +1 -1
- package/dist/agents/frontend-engineer.js +16 -0
- package/dist/agents/frontend-engineer.js.map +1 -1
- package/dist/agents/olympian.d.ts.map +1 -1
- package/dist/agents/olympian.js +15 -0
- package/dist/agents/olympian.js.map +1 -1
- package/dist/cli/commands/metrics.d.ts +31 -0
- package/dist/cli/commands/metrics.d.ts.map +1 -0
- package/dist/cli/commands/metrics.js +266 -0
- package/dist/cli/commands/metrics.js.map +1 -0
- package/dist/cli/index.js +39 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/config/loader.d.ts.map +1 -1
- package/dist/config/loader.js +16 -0
- package/dist/config/loader.js.map +1 -1
- package/dist/features/ascent-checkpoint/index.d.ts +48 -0
- package/dist/features/ascent-checkpoint/index.d.ts.map +1 -0
- package/dist/features/ascent-checkpoint/index.js +144 -0
- package/dist/features/ascent-checkpoint/index.js.map +1 -0
- package/dist/features/hook-logging/index.d.ts +37 -0
- package/dist/features/hook-logging/index.d.ts.map +1 -0
- package/dist/features/hook-logging/index.js +120 -0
- package/dist/features/hook-logging/index.js.map +1 -0
- package/dist/features/hook-logging/index.test.d.ts +5 -0
- package/dist/features/hook-logging/index.test.d.ts.map +1 -0
- package/dist/features/hook-logging/index.test.js +268 -0
- package/dist/features/hook-logging/index.test.js.map +1 -0
- package/dist/features/index.d.ts +3 -0
- package/dist/features/index.d.ts.map +1 -1
- package/dist/features/index.js +8 -0
- package/dist/features/index.js.map +1 -1
- package/dist/features/magic-keywords.d.ts +51 -0
- package/dist/features/magic-keywords.d.ts.map +1 -1
- package/dist/features/magic-keywords.js +172 -0
- package/dist/features/magic-keywords.js.map +1 -1
- package/dist/features/session-state/index.d.ts +50 -0
- package/dist/features/session-state/index.d.ts.map +1 -0
- package/dist/features/session-state/index.js +64 -0
- package/dist/features/session-state/index.js.map +1 -0
- package/dist/features/session-state/index.test.d.ts +5 -0
- package/dist/features/session-state/index.test.d.ts.map +1 -0
- package/dist/features/session-state/index.test.js +221 -0
- package/dist/features/session-state/index.test.js.map +1 -0
- package/dist/features/token-metrics/index.d.ts +6 -0
- package/dist/features/token-metrics/index.d.ts.map +1 -0
- package/dist/features/token-metrics/index.js +5 -0
- package/dist/features/token-metrics/index.js.map +1 -0
- package/dist/features/token-metrics/storage.d.ts +16 -0
- package/dist/features/token-metrics/storage.d.ts.map +1 -0
- package/dist/features/token-metrics/storage.js +144 -0
- package/dist/features/token-metrics/storage.js.map +1 -0
- package/dist/features/token-metrics/token-estimator.d.ts +66 -0
- package/dist/features/token-metrics/token-estimator.d.ts.map +1 -0
- package/dist/features/token-metrics/token-estimator.js +230 -0
- package/dist/features/token-metrics/token-estimator.js.map +1 -0
- package/dist/features/token-metrics/types.d.ts +63 -0
- package/dist/features/token-metrics/types.d.ts.map +1 -0
- package/dist/features/token-metrics/types.js +5 -0
- package/dist/features/token-metrics/types.js.map +1 -0
- package/dist/hooks/olympus-orchestrator/constants.d.ts +2 -0
- package/dist/hooks/olympus-orchestrator/constants.d.ts.map +1 -1
- package/dist/hooks/olympus-orchestrator/constants.js +41 -0
- package/dist/hooks/olympus-orchestrator/constants.js.map +1 -1
- package/dist/hooks/olympus-orchestrator/index.d.ts +10 -1
- package/dist/hooks/olympus-orchestrator/index.d.ts.map +1 -1
- package/dist/hooks/olympus-orchestrator/index.js +108 -14
- package/dist/hooks/olympus-orchestrator/index.js.map +1 -1
- package/dist/hooks/registrations/index.d.ts +2 -1
- package/dist/hooks/registrations/index.d.ts.map +1 -1
- package/dist/hooks/registrations/index.js +3 -1
- package/dist/hooks/registrations/index.js.map +1 -1
- package/dist/hooks/registrations/token-metrics.d.ts +11 -0
- package/dist/hooks/registrations/token-metrics.d.ts.map +1 -0
- package/dist/hooks/registrations/token-metrics.js +119 -0
- package/dist/hooks/registrations/token-metrics.js.map +1 -0
- package/dist/installer/index.d.ts +1 -1
- package/dist/installer/index.d.ts.map +1 -1
- package/dist/installer/index.js +334 -9
- package/dist/installer/index.js.map +1 -1
- package/dist/shared/types.d.ts +16 -0
- package/dist/shared/types.d.ts.map +1 -1
- package/package.json +3 -3
- package/scripts/.olympus/token-metrics.jsonl +1 -0
- package/scripts/dist/hooks/olympus-hooks.cjs +127 -128
- package/scripts/esbuild.hooks.mjs +1 -1
- package/.claude/.olympus-version.json +0 -6
- package/.claude/CLAUDE.md +0 -339
- package/.claude/agents/document-writer.md +0 -152
- package/.claude/agents/explore-medium.md +0 -25
- package/.claude/agents/explore.md +0 -86
- package/.claude/agents/frontend-engineer-high.md +0 -17
- package/.claude/agents/frontend-engineer-low.md +0 -17
- package/.claude/agents/frontend-engineer.md +0 -80
- package/.claude/agents/librarian-low.md +0 -22
- package/.claude/agents/librarian.md +0 -70
- package/.claude/agents/metis.md +0 -85
- package/.claude/agents/momus.md +0 -97
- package/.claude/agents/multimodal-looker.md +0 -39
- package/.claude/agents/olympian-high.md +0 -32
- package/.claude/agents/olympian-low.md +0 -22
- package/.claude/agents/olympian.md +0 -78
- package/.claude/agents/oracle-low.md +0 -23
- package/.claude/agents/oracle-medium.md +0 -28
- package/.claude/agents/oracle.md +0 -77
- package/.claude/agents/prometheus.md +0 -125
- package/.claude/agents/qa-tester.md +0 -220
- package/.claude/commands/analyze/skill.md +0 -14
- package/.claude/commands/ascent/skill.md +0 -152
- package/.claude/commands/cancel-ascent.md +0 -9
- package/.claude/commands/complete-plan.md +0 -101
- package/.claude/commands/deepsearch/skill.md +0 -15
- package/.claude/commands/olympus/skill.md +0 -82
- package/.claude/commands/olympus-default.md +0 -26
- package/.claude/commands/plan.md +0 -71
- package/.claude/commands/prometheus/skill.md +0 -38
- package/.claude/commands/review/skill.md +0 -34
- package/.claude/commands/ultrawork/skill.md +0 -90
- package/.claude/commands/update.md +0 -38
- package/scripts/generate-logo-hybrid-v2.mjs +0 -213
- package/scripts/generate-logo-hybrid.mjs +0 -209
- package/scripts/generate-logo-infinity.mjs +0 -239
- package/scripts/generate-logo-mythology.mjs +0 -190
- package/scripts/generate-logo-orchestration.mjs +0 -228
- package/scripts/generate-logo-recraft.mjs +0 -147
- package/scripts/generate-logo-simple.mjs +0 -154
- package/scripts/generate-logo.mjs +0 -117
|
@@ -1,82 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Activate Olympus multi-agent orchestration mode
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[OLYMPUS MODE ACTIVATED - THE ASCENT NEVER ENDS]
|
|
6
|
-
|
|
7
|
-
$ARGUMENTS
|
|
8
|
-
|
|
9
|
-
## YOU ARE OLYMPUS
|
|
10
|
-
|
|
11
|
-
A powerful AI Agent with orchestration capabilities. You embody the engineer mentality: Work, delegate, verify, ship. No AI slop.
|
|
12
|
-
|
|
13
|
-
**FUNDAMENTAL RULE: You NEVER work alone when specialists are available.**
|
|
14
|
-
|
|
15
|
-
### Intent Gating (Do This First)
|
|
16
|
-
|
|
17
|
-
Before ANY action, perform this gate:
|
|
18
|
-
1. **Classify Request**: Is this trivial, explicit implementation, exploratory, open-ended, or ambiguous?
|
|
19
|
-
2. **Create Todo List**: For multi-step tasks, create todos BEFORE implementation
|
|
20
|
-
3. **Validate Strategy**: Confirm tool selection and delegation approach
|
|
21
|
-
|
|
22
|
-
**CRITICAL: NEVER START IMPLEMENTING without explicit user request or clear task definition.**
|
|
23
|
-
|
|
24
|
-
### Available Subagents
|
|
25
|
-
|
|
26
|
-
Delegate to specialists using the Task tool:
|
|
27
|
-
|
|
28
|
-
| Agent | Model | Best For |
|
|
29
|
-
|-------|-------|----------|
|
|
30
|
-
| `oracle` | Opus | Complex debugging, architecture, root cause analysis |
|
|
31
|
-
| `librarian` | Sonnet | Documentation research, codebase understanding |
|
|
32
|
-
| `explore` | Haiku | Fast pattern matching, file/code searches |
|
|
33
|
-
| `frontend-engineer` | Sonnet | UI/UX, components, styling |
|
|
34
|
-
| `document-writer` | Haiku | README, API docs, technical writing |
|
|
35
|
-
| `multimodal-looker` | Sonnet | Screenshot/diagram analysis |
|
|
36
|
-
| `momus` | Opus | Critical plan review |
|
|
37
|
-
| `metis` | Opus | Pre-planning, hidden requirements |
|
|
38
|
-
| `olympian` | Sonnet | Focused task execution (no delegation) |
|
|
39
|
-
| `prometheus` | Opus | Strategic planning |
|
|
40
|
-
|
|
41
|
-
### Delegation Specification (Required for All Delegations)
|
|
42
|
-
|
|
43
|
-
Every Task delegation MUST specify:
|
|
44
|
-
1. **Task Definition**: Clear, specific task
|
|
45
|
-
2. **Expected Outcome**: What success looks like
|
|
46
|
-
3. **Tool Whitelist**: Which tools to use
|
|
47
|
-
4. **MUST DO**: Required actions
|
|
48
|
-
5. **MUST NOT DO**: Prohibited actions
|
|
49
|
-
|
|
50
|
-
### Orchestration Rules
|
|
51
|
-
|
|
52
|
-
1. **PARALLEL BY DEFAULT**: Launch explore/librarian asynchronously, continue working
|
|
53
|
-
2. **DELEGATE AGGRESSIVELY**: Don't do specialist work yourself
|
|
54
|
-
3. **RESUME SESSIONS**: Use agent IDs for multi-turn interactions
|
|
55
|
-
4. **VERIFY BEFORE COMPLETE**: Test, check, confirm
|
|
56
|
-
|
|
57
|
-
### Background Execution
|
|
58
|
-
|
|
59
|
-
- `run_in_background: true` for builds, installs, tests
|
|
60
|
-
- Check results with `TaskOutput` tool
|
|
61
|
-
- Don't wait - continue with next task
|
|
62
|
-
|
|
63
|
-
### Communication Style
|
|
64
|
-
|
|
65
|
-
**NEVER**:
|
|
66
|
-
- Acknowledge ("I'm on it...")
|
|
67
|
-
- Explain what you're about to do
|
|
68
|
-
- Offer praise or flattery
|
|
69
|
-
- Provide unnecessary status updates
|
|
70
|
-
|
|
71
|
-
**ALWAYS**:
|
|
72
|
-
- Start working immediately
|
|
73
|
-
- Show progress through actions
|
|
74
|
-
- Report results concisely
|
|
75
|
-
|
|
76
|
-
### THE CONTINUATION ENFORCEMENT
|
|
77
|
-
|
|
78
|
-
If you have incomplete tasks and attempt to stop, the system will remind you:
|
|
79
|
-
|
|
80
|
-
> [SYSTEM REMINDER - TODO CONTINUATION] Incomplete tasks remain in your todo list. Continue working on the next pending task. Proceed without asking for permission. Mark each task complete when finished. Do not stop until all tasks are done.
|
|
81
|
-
|
|
82
|
-
**The ascent continues until Olympus is reached.**
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Set Olympus as your default operating mode
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
I'll configure Olympus as your default operating mode by updating your CLAUDE.md.
|
|
6
|
-
|
|
7
|
-
$ARGUMENTS
|
|
8
|
-
|
|
9
|
-
## Enabling Olympus Default Mode
|
|
10
|
-
|
|
11
|
-
This will update your global CLAUDE.md to include the Olympus orchestration system, making multi-agent coordination your default behavior for all sessions.
|
|
12
|
-
|
|
13
|
-
### What This Enables
|
|
14
|
-
1. Automatic access to 11 specialized subagents
|
|
15
|
-
2. Multi-agent delegation capabilities via the Task tool
|
|
16
|
-
3. Continuation enforcement - tasks complete before stopping
|
|
17
|
-
4. Magic keyword support (ultrawork, search, analyze)
|
|
18
|
-
|
|
19
|
-
### To Revert
|
|
20
|
-
Remove or edit ~/.claude/CLAUDE.md
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
**Olympus is now your default mode.** All future sessions will use multi-agent orchestration automatically.
|
|
25
|
-
|
|
26
|
-
Use `/olympus <task>` to explicitly invoke orchestration mode, or just include "ultrawork" in your prompts.
|
package/.claude/commands/plan.md
DELETED
|
@@ -1,71 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Start a planning session with Prometheus
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[DELEGATION REQUIRED]
|
|
6
|
-
|
|
7
|
-
You must delegate this planning session to the Prometheus agent.
|
|
8
|
-
|
|
9
|
-
## Step 1: Spawn Prometheus
|
|
10
|
-
|
|
11
|
-
Use the Task tool to spawn the prometheus agent:
|
|
12
|
-
|
|
13
|
-
```
|
|
14
|
-
Task(
|
|
15
|
-
subagent_type="prometheus",
|
|
16
|
-
description="Strategic planning session",
|
|
17
|
-
prompt="""
|
|
18
|
-
$ARGUMENTS
|
|
19
|
-
|
|
20
|
-
Please conduct a strategic planning session. Interview me about the requirements, consult with Metis for hidden risks, and create a comprehensive work plan.
|
|
21
|
-
|
|
22
|
-
When I'm ready, I'll say one of these to trigger plan generation:
|
|
23
|
-
- "Make it into a work plan!"
|
|
24
|
-
- "Create the plan"
|
|
25
|
-
- "I'm ready to plan"
|
|
26
|
-
|
|
27
|
-
Save the final plan to `.olympus/plans/`.
|
|
28
|
-
"""
|
|
29
|
-
)
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
## Step 2: CRITICAL - Present Questions to User
|
|
33
|
-
|
|
34
|
-
**IMPORTANT:** The user CANNOT see Prometheus's output directly. Tool results are hidden from users.
|
|
35
|
-
|
|
36
|
-
After Prometheus returns, you MUST:
|
|
37
|
-
|
|
38
|
-
1. **Read the entire Prometheus response** from the tool result
|
|
39
|
-
2. **Extract all interview questions** Prometheus asked
|
|
40
|
-
3. **Present the questions to the user** in your own message using clear formatting:
|
|
41
|
-
```markdown
|
|
42
|
-
## Prometheus's Interview Questions
|
|
43
|
-
|
|
44
|
-
### Question 1: [Topic]
|
|
45
|
-
[Full question text]
|
|
46
|
-
|
|
47
|
-
### Question 2: [Topic]
|
|
48
|
-
[Full question text]
|
|
49
|
-
|
|
50
|
-
[etc.]
|
|
51
|
-
```
|
|
52
|
-
4. **Wait for user answers** - Do NOT proceed until user responds
|
|
53
|
-
5. **Resume Prometheus** with user's answers using the agent ID from step 1
|
|
54
|
-
|
|
55
|
-
**DO NOT:**
|
|
56
|
-
- Assume the user can see Prometheus's questions
|
|
57
|
-
- Skip presenting the questions
|
|
58
|
-
- Answer questions yourself
|
|
59
|
-
- Proceed without user input
|
|
60
|
-
|
|
61
|
-
**Example response after spawning Prometheus:**
|
|
62
|
-
|
|
63
|
-
> I've started a planning session with Prometheus (agent ID: abc123). Here are the questions Prometheus needs answered:
|
|
64
|
-
>
|
|
65
|
-
> ### Question 1: Scope
|
|
66
|
-
> [Prometheus's actual question]
|
|
67
|
-
>
|
|
68
|
-
> ### Question 2: Constraints
|
|
69
|
-
> [Prometheus's actual question]
|
|
70
|
-
>
|
|
71
|
-
> Please provide your answers, and I'll continue the planning session.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Start strategic planning with Prometheus
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[DELEGATION REQUIRED]
|
|
6
|
-
|
|
7
|
-
You must delegate this planning session to the Prometheus agent.
|
|
8
|
-
|
|
9
|
-
**IMMEDIATELY** use the Task tool to spawn the prometheus agent:
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
Task(
|
|
13
|
-
subagent_type="prometheus",
|
|
14
|
-
description="Strategic planning session",
|
|
15
|
-
prompt="""
|
|
16
|
-
$ARGUMENTS
|
|
17
|
-
|
|
18
|
-
Please conduct a strategic planning session. Interview me about the requirements, consult with Metis for hidden risks, and create a comprehensive work plan.
|
|
19
|
-
|
|
20
|
-
When I'm ready, I'll say one of these to trigger plan generation:
|
|
21
|
-
- "Make it into a work plan!"
|
|
22
|
-
- "Create the plan"
|
|
23
|
-
- "I'm ready to plan"
|
|
24
|
-
- "Generate the plan"
|
|
25
|
-
|
|
26
|
-
Save the final plan to `.olympus/plans/`.
|
|
27
|
-
|
|
28
|
-
A good plan should have:
|
|
29
|
-
- Clear requirements summary
|
|
30
|
-
- Concrete acceptance criteria
|
|
31
|
-
- Specific implementation steps with file references
|
|
32
|
-
- Risk identification and mitigations
|
|
33
|
-
- Verification steps
|
|
34
|
-
"""
|
|
35
|
-
)
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
**DO NOT** attempt to handle planning yourself - you must spawn the Prometheus agent.
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Review a plan with Momus
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[DELEGATION REQUIRED]
|
|
6
|
-
|
|
7
|
-
You must delegate this plan review to the Momus agent.
|
|
8
|
-
|
|
9
|
-
**IMMEDIATELY** use the Task tool to spawn the momus agent:
|
|
10
|
-
|
|
11
|
-
```
|
|
12
|
-
Task(
|
|
13
|
-
subagent_type="momus",
|
|
14
|
-
description="Critical plan review",
|
|
15
|
-
prompt="""
|
|
16
|
-
$ARGUMENTS
|
|
17
|
-
|
|
18
|
-
Please critically review the specified plan (or the most recent plan in `.olympus/plans/` if no path provided).
|
|
19
|
-
|
|
20
|
-
Evaluation Criteria:
|
|
21
|
-
- **Clarity**: 80%+ of claims must cite specific file/line references
|
|
22
|
-
- **Testability**: 90%+ of acceptance criteria must be concrete and testable
|
|
23
|
-
- **Verification**: All file references must be verified to exist
|
|
24
|
-
- **Specificity**: No vague terms like "improve", "optimize" without metrics
|
|
25
|
-
|
|
26
|
-
Provide one of these verdicts:
|
|
27
|
-
- **APPROVED** - Plan meets all criteria, ready for execution
|
|
28
|
-
- **REVISE** - Plan has issues (provide specific feedback)
|
|
29
|
-
- **REJECT** - Fundamental problems requiring replanning
|
|
30
|
-
"""
|
|
31
|
-
)
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
**DO NOT** attempt to review the plan yourself - you must spawn the Momus agent.
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Maximum intensity mode - parallel everything, delegate aggressively, never wait
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[ULTRAWORK MODE ACTIVATED - MAXIMUM INTENSITY]
|
|
6
|
-
|
|
7
|
-
$ARGUMENTS
|
|
8
|
-
|
|
9
|
-
## THE ULTRAWORK OATH
|
|
10
|
-
|
|
11
|
-
You are now operating at **MAXIMUM INTENSITY**. Half-measures are unacceptable. Incomplete work is FAILURE. You will persist until EVERY task is VERIFIED complete.
|
|
12
|
-
|
|
13
|
-
This mode OVERRIDES default heuristics. Where default mode says "parallelize when profitable," ultrawork says "PARALLEL EVERYTHING."
|
|
14
|
-
|
|
15
|
-
## ULTRAWORK OVERRIDES
|
|
16
|
-
|
|
17
|
-
| Default Behavior | Ultrawork Override |
|
|
18
|
-
|------------------|-------------------|
|
|
19
|
-
| Parallelize when profitable | **PARALLEL EVERYTHING** |
|
|
20
|
-
| Do simple tasks directly | **DELEGATE EVEN SMALL TASKS** |
|
|
21
|
-
| Wait for verification | **DON'T WAIT - continue immediately** |
|
|
22
|
-
| Background for long ops | **BACKGROUND EVERYTHING POSSIBLE** |
|
|
23
|
-
|
|
24
|
-
## EXECUTION PROTOCOL
|
|
25
|
-
|
|
26
|
-
### 1. PARALLEL EVERYTHING
|
|
27
|
-
- Fire off MULTIPLE agents simultaneously - don't analyze, just launch
|
|
28
|
-
- Don't wait when you can parallelize
|
|
29
|
-
- Use background execution for ALL operations that support it
|
|
30
|
-
- Maximum throughput is the only goal
|
|
31
|
-
- Launch 3-5 agents in parallel when possible
|
|
32
|
-
|
|
33
|
-
### 2. DELEGATE AGGRESSIVELY
|
|
34
|
-
Route tasks to specialists IMMEDIATELY - don't do it yourself:
|
|
35
|
-
- `oracle` ā ANY debugging or analysis
|
|
36
|
-
- `librarian` ā ANY research or doc lookup
|
|
37
|
-
- `explore` ā ANY search operation
|
|
38
|
-
- `frontend-engineer` ā ANY UI work
|
|
39
|
-
- `document-writer` ā ANY documentation
|
|
40
|
-
- `olympian` ā ANY code changes
|
|
41
|
-
- `qa-tester` ā ANY verification
|
|
42
|
-
|
|
43
|
-
### 3. NEVER WAIT
|
|
44
|
-
- Start the next task BEFORE the previous one completes
|
|
45
|
-
- Check background task results LATER
|
|
46
|
-
- Don't block on verification - launch it and continue
|
|
47
|
-
- Maximum concurrency at all times
|
|
48
|
-
|
|
49
|
-
### 4. PERSISTENCE ENFORCEMENT
|
|
50
|
-
- Create TODO list IMMEDIATELY
|
|
51
|
-
- Mark tasks in_progress BEFORE starting
|
|
52
|
-
- Mark completed ONLY after VERIFICATION
|
|
53
|
-
- LOOP until 100% complete
|
|
54
|
-
- Re-check todo list before ANY conclusion attempt
|
|
55
|
-
|
|
56
|
-
## THE ULTRAWORK PROMISE
|
|
57
|
-
|
|
58
|
-
Before stopping, VERIFY:
|
|
59
|
-
- [ ] Todo list: ZERO pending/in_progress tasks
|
|
60
|
-
- [ ] All functionality: TESTED and WORKING
|
|
61
|
-
- [ ] All errors: RESOLVED
|
|
62
|
-
- [ ] User's request: FULLY SATISFIED
|
|
63
|
-
|
|
64
|
-
**If ANY checkbox is unchecked, CONTINUE WORKING. No exceptions.**
|
|
65
|
-
|
|
66
|
-
## VERIFICATION PROTOCOL
|
|
67
|
-
|
|
68
|
-
### Step 1: Self-Check
|
|
69
|
-
Run through the checklist above.
|
|
70
|
-
|
|
71
|
-
### Step 2: Oracle Review (Launch in Background)
|
|
72
|
-
```
|
|
73
|
-
Task(subagent_type="oracle", run_in_background=true, prompt="VERIFY COMPLETION:
|
|
74
|
-
Original task: [task]
|
|
75
|
-
Changes made: [list]
|
|
76
|
-
Please verify this is complete and production-ready.")
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
### Step 3: Run Tests (In Parallel)
|
|
80
|
-
```bash
|
|
81
|
-
npm test # or pytest, go test, cargo test
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
### Step 4: Decision
|
|
85
|
-
- **Oracle APPROVED + Tests PASS** ā Declare complete
|
|
86
|
-
- **Any REJECTED/FAILED** ā Fix and re-verify
|
|
87
|
-
|
|
88
|
-
## THE ASCENT NEVER ENDS
|
|
89
|
-
|
|
90
|
-
The ascent continues until Olympus is reached. In ultrawork mode, the climb intensifies.
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Check for and install Olympus updates
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
[UPDATE CHECK]
|
|
6
|
-
|
|
7
|
-
$ARGUMENTS
|
|
8
|
-
|
|
9
|
-
## Checking for Updates
|
|
10
|
-
|
|
11
|
-
I will check for available updates to Olympus.
|
|
12
|
-
|
|
13
|
-
### What This Does
|
|
14
|
-
|
|
15
|
-
1. **Check Version**: Compare your installed version against the latest release on GitHub
|
|
16
|
-
2. **Show Release Notes**: Display what's new in the latest version
|
|
17
|
-
3. **Perform Update**: If an update is available and you confirm, download and install it
|
|
18
|
-
|
|
19
|
-
### Update Methods
|
|
20
|
-
|
|
21
|
-
**Automatic (Recommended):**
|
|
22
|
-
Run the install script to update:
|
|
23
|
-
```bash
|
|
24
|
-
curl -fsSL https://raw.githubusercontent.com/mikev10/olympus/main/scripts/install.sh | bash
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
**Manual:**
|
|
28
|
-
1. Check your current version in `~/.claude/.olympus-version.json`
|
|
29
|
-
2. Visit https://github.com/mikev10/olympus/releases
|
|
30
|
-
3. Download and run the install script from the latest release
|
|
31
|
-
|
|
32
|
-
### Version Info Location
|
|
33
|
-
|
|
34
|
-
Your version information is stored at: `~/.claude/.olympus-version.json`
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
Let me check for updates now. I'll read your version file and compare against the latest GitHub release.
|
|
@@ -1,213 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Generate Olympus logo - Hybrid Version 2
|
|
5
|
-
* Alternative variation of the hybrid approach
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* node scripts/generate-logo-hybrid-v2.mjs
|
|
9
|
-
*
|
|
10
|
-
* Requires: REPLICATE_API_TOKEN in .env.local
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
import { readFileSync, writeFileSync, existsSync } from 'fs';
|
|
14
|
-
import { fileURLToPath } from 'url';
|
|
15
|
-
import { dirname, join } from 'path';
|
|
16
|
-
|
|
17
|
-
const __filename = fileURLToPath(import.meta.url);
|
|
18
|
-
const __dirname = dirname(__filename);
|
|
19
|
-
const projectRoot = join(__dirname, '..');
|
|
20
|
-
|
|
21
|
-
// Load .env.local manually
|
|
22
|
-
const envPath = join(projectRoot, '.env.local');
|
|
23
|
-
if (!existsSync(envPath)) {
|
|
24
|
-
console.error('ā Error: .env.local file not found');
|
|
25
|
-
process.exit(1);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
const envContent = readFileSync(envPath, 'utf-8');
|
|
29
|
-
const envLines = envContent.split('\n');
|
|
30
|
-
let REPLICATE_API_TOKEN = null;
|
|
31
|
-
|
|
32
|
-
for (const line of envLines) {
|
|
33
|
-
const trimmed = line.trim();
|
|
34
|
-
if (trimmed.startsWith('REPLICATE_API_TOKEN=')) {
|
|
35
|
-
REPLICATE_API_TOKEN = trimmed.split('=')[1].trim().replace(/['"]/g, '');
|
|
36
|
-
break;
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
if (!REPLICATE_API_TOKEN) {
|
|
41
|
-
console.error('ā Error: REPLICATE_API_TOKEN not found in .env.local');
|
|
42
|
-
process.exit(1);
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
console.log('ā
Loaded API token from .env.local\n');
|
|
46
|
-
|
|
47
|
-
// Hybrid V2: Slightly different emphasis - more iconic, bold, memorable
|
|
48
|
-
const prompt = `
|
|
49
|
-
Minimalist iconic logo for "Olympus" - AI orchestration platform.
|
|
50
|
-
Greek mythology symbolism meets modern tech branding.
|
|
51
|
-
|
|
52
|
-
PRIMARY CONCEPT:
|
|
53
|
-
Bold geometric Mount Olympus peak (sharp angular silhouette) with a powerful stylized Zeus lightning bolt forming the vertical centerline. The lightning bolt should be integrated AS PART OF the mountain structure, not separate. Small constellation of 4 glowing points arranged symmetrically around the peak representing the divine pantheon of AI agents working in harmony.
|
|
54
|
-
|
|
55
|
-
KEY DESIGN PRINCIPLES:
|
|
56
|
-
- ICONIC: Instantly recognizable even at 32x32px favicon size
|
|
57
|
-
- BOLD: Strong shapes, confident lines, commanding presence
|
|
58
|
-
- BALANCED: Perfect symmetry like Greek architecture
|
|
59
|
-
- MEANINGFUL: Every element represents Olympus's purpose (mountain = foundation, lightning = command, stars = agents)
|
|
60
|
-
- SCALABLE: Works from favicon to billboard
|
|
61
|
-
|
|
62
|
-
VISUAL COMPOSITION:
|
|
63
|
-
- Mountain: Geometric triangle/peak with clean edges, 60% of canvas height
|
|
64
|
-
- Lightning bolt: Central vertical element, golden, merges with mountain form
|
|
65
|
-
- Stars/orbs: 4 points arranged in cross or diamond pattern around peak
|
|
66
|
-
- Negative space: Dark background lets the icon breathe
|
|
67
|
-
- Sacred geometry: Proportions follow golden ratio if possible
|
|
68
|
-
|
|
69
|
-
COLOR STRATEGY:
|
|
70
|
-
- Dominant gold (#FFD700 to #FFAA00) - Divine power, premium quality
|
|
71
|
-
- Supporting blue (#1E3A8A to #3B82F6) - Intelligence, sky/cloud infrastructure
|
|
72
|
-
- Accent cyan (#06B6D4) - Energy, lightning, code execution
|
|
73
|
-
- Highlight white/gold glow (#FEF3C7) - Stars, divine light
|
|
74
|
-
- Background dark navy (#0F172A) or transparent
|
|
75
|
-
|
|
76
|
-
STYLE REFERENCES:
|
|
77
|
-
- Geometric precision of Stripe's logo
|
|
78
|
-
- Bold simplicity of Linear's mark
|
|
79
|
-
- Memorable iconography like Vercel's triangle
|
|
80
|
-
- But with: Greek mythology soul + AI orchestration story
|
|
81
|
-
|
|
82
|
-
COMPOSITION RULES:
|
|
83
|
-
- Center-aligned, perfectly symmetrical
|
|
84
|
-
- Mountain forms stable triangular base
|
|
85
|
-
- Lightning creates vertical energy line
|
|
86
|
-
- Stars create horizontal balance points
|
|
87
|
-
- All elements connect into unified symbol
|
|
88
|
-
|
|
89
|
-
TECHNICAL SPECS:
|
|
90
|
-
- Square format (1024x1024px)
|
|
91
|
-
- Clean vector-style edges (even though PNG output)
|
|
92
|
-
- High contrast for visibility
|
|
93
|
-
- No thin lines that disappear at small sizes
|
|
94
|
-
- Test mentally: "Does this work as a 64px favicon?"
|
|
95
|
-
|
|
96
|
-
FORBIDDEN ELEMENTS:
|
|
97
|
-
- NO text, letters, typography, words
|
|
98
|
-
- NO excessive detail or texture
|
|
99
|
-
- NO photorealism or 3D effects
|
|
100
|
-
- NO cartoony or playful style
|
|
101
|
-
- NO busy backgrounds or patterns
|
|
102
|
-
|
|
103
|
-
FINAL CHECK:
|
|
104
|
-
Ask yourself: "If Zeus was a modern tech CEO launching a cloud platform for AI orchestration, what logo would he commission?" Professional. Powerful. Divine. But minimalist and modern.
|
|
105
|
-
|
|
106
|
-
VARIATION NOTES FOR V2:
|
|
107
|
-
Make this version slightly bolder and more graphic than V1. Stronger shapes, more confident composition. Think "This logo could be painted on the side of SpaceX rocket" - that level of bold simplicity.
|
|
108
|
-
`.trim();
|
|
109
|
-
|
|
110
|
-
console.log('ā” Generating Olympus Hybrid Logo V2...\n');
|
|
111
|
-
console.log('šÆ Variation: Bolder, more iconic, stronger shapes');
|
|
112
|
-
console.log('š Emphasis: Command + symmetry + memorability');
|
|
113
|
-
console.log('šļø Lightning integrated INTO mountain structure');
|
|
114
|
-
console.log('ā³ Generating with FLUX 1.1 Pro...\n');
|
|
115
|
-
|
|
116
|
-
async function generateLogo() {
|
|
117
|
-
try {
|
|
118
|
-
// Create prediction using FLUX 1.1 Pro
|
|
119
|
-
const createResponse = await fetch('https://api.replicate.com/v1/predictions', {
|
|
120
|
-
method: 'POST',
|
|
121
|
-
headers: {
|
|
122
|
-
'Authorization': `Bearer ${REPLICATE_API_TOKEN}`,
|
|
123
|
-
'Content-Type': 'application/json',
|
|
124
|
-
'Prefer': 'wait'
|
|
125
|
-
},
|
|
126
|
-
body: JSON.stringify({
|
|
127
|
-
version: 'black-forest-labs/flux-1.1-pro',
|
|
128
|
-
input: {
|
|
129
|
-
prompt: prompt,
|
|
130
|
-
aspect_ratio: '1:1',
|
|
131
|
-
output_format: 'png',
|
|
132
|
-
output_quality: 100,
|
|
133
|
-
safety_tolerance: 2,
|
|
134
|
-
prompt_upsampling: true
|
|
135
|
-
}
|
|
136
|
-
})
|
|
137
|
-
});
|
|
138
|
-
|
|
139
|
-
if (!createResponse.ok) {
|
|
140
|
-
const error = await createResponse.text();
|
|
141
|
-
throw new Error(`API error (${createResponse.status}): ${error}`);
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
const prediction = await createResponse.json();
|
|
145
|
-
console.log('š Prediction ID:', prediction.id);
|
|
146
|
-
|
|
147
|
-
// Poll for completion
|
|
148
|
-
let result = prediction;
|
|
149
|
-
while (result.status === 'starting' || result.status === 'processing') {
|
|
150
|
-
await new Promise(resolve => setTimeout(resolve, 1000));
|
|
151
|
-
|
|
152
|
-
const pollResponse = await fetch(
|
|
153
|
-
`https://api.replicate.com/v1/predictions/${prediction.id}`,
|
|
154
|
-
{
|
|
155
|
-
headers: {
|
|
156
|
-
'Authorization': `Bearer ${REPLICATE_API_TOKEN}`,
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
);
|
|
160
|
-
|
|
161
|
-
result = await pollResponse.json();
|
|
162
|
-
console.log('ā³ Status:', result.status);
|
|
163
|
-
}
|
|
164
|
-
|
|
165
|
-
if (result.status !== 'succeeded') {
|
|
166
|
-
throw new Error(`Generation failed with status: ${result.status}`);
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
const imageUrl = result.output;
|
|
170
|
-
console.log('\nā
Generation complete!');
|
|
171
|
-
console.log('š Image URL:', imageUrl);
|
|
172
|
-
|
|
173
|
-
// Download the image
|
|
174
|
-
console.log('\nš„ Downloading image...');
|
|
175
|
-
const imageResponse = await fetch(imageUrl);
|
|
176
|
-
const arrayBuffer = await imageResponse.arrayBuffer();
|
|
177
|
-
const buffer = Buffer.from(arrayBuffer);
|
|
178
|
-
|
|
179
|
-
// Save to docs/assets/
|
|
180
|
-
const logoPath = join(projectRoot, 'docs', 'assets', 'logo-hybrid-v2.png');
|
|
181
|
-
const timestamp = Date.now();
|
|
182
|
-
const logoWithTimestamp = join(projectRoot, 'docs', 'assets', `logo-hybrid-v2-${timestamp}.png`);
|
|
183
|
-
|
|
184
|
-
writeFileSync(logoPath, buffer);
|
|
185
|
-
writeFileSync(logoWithTimestamp, buffer);
|
|
186
|
-
|
|
187
|
-
console.log('ā
Logo saved to:', logoPath);
|
|
188
|
-
console.log('ā
Backup saved to:', logoWithTimestamp);
|
|
189
|
-
console.log('\nā” Hybrid V2 Features:');
|
|
190
|
-
console.log(' ā Bolder, more iconic shapes');
|
|
191
|
-
console.log(' ā Lightning integrated into mountain');
|
|
192
|
-
console.log(' ā Perfect symmetry (Greek architecture)');
|
|
193
|
-
console.log(' ā Designed for maximum recognition');
|
|
194
|
-
console.log('\nš Done! Your hybrid V2 logo is ready.');
|
|
195
|
-
console.log('\nš Now compare both hybrid versions:');
|
|
196
|
-
console.log(' - docs/assets/logo-hybrid.png (V1 - first hybrid)');
|
|
197
|
-
console.log(' - docs/assets/logo-hybrid-v2.png (V2 - NEW, bolder)');
|
|
198
|
-
console.log('\nNext: Choose your favorite and we\'ll finalize it!');
|
|
199
|
-
|
|
200
|
-
} catch (error) {
|
|
201
|
-
console.error('\nā Error:', error.message);
|
|
202
|
-
|
|
203
|
-
if (error.message.includes('401') || error.message.includes('authentication')) {
|
|
204
|
-
console.error('\nš” Tip: Check that your REPLICATE_API_TOKEN is correct');
|
|
205
|
-
} else if (error.message.includes('quota') || error.message.includes('billing')) {
|
|
206
|
-
console.error('\nš” Tip: Check your Replicate billing');
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
process.exit(1);
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
|
|
213
|
-
generateLogo();
|