Install
$ agentstack add skill-ahoo-wang-skills-wow ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Wow Framework Skill
Use this as the router for Wow framework work. For end-to-end aggregate or saga development, route to ../wow-development-workflow/SKILL.md. For focused lookup, load the smallest reference file that matches the task, then verify exact APIs in the current checkout before editing code.
Source-First Rule
Before writing or changing Wow code, verify the current implementation with rg, rg --files, and nearby source files. Examples in this skill and its references are navigation aids, not a substitute for the target repository's APIs.
Useful first searches:
rg -n "@AggregateRoot|@OnCommand|@OnSourcing|@StatelessSaga|@ProjectionProcessor" . -g "*.kt"
rg -n "AggregateSpec Command Aggregate -> Event -> EventStore -> EventBus
-> State Aggregate sourcing
-> Projection / Saga / EventProcessor
Prefer the Aggregate Pattern: command aggregate handles commands and returns events; state aggregate mutates only through sourcing handlers. Avoid direct state mutation in command handlers.
Quality Gates
Before finishing Wow code changes, check:
- Command handlers return domain events and do not mutate state directly.
- Commands and domain events include
@Summaryand@Descriptionmetadata when they are part of the API/domain contract. - Important repeated domain fields are modeled with
Capableinterfaces where reuse improves clarity. - State changes happen through deterministic sourcing handlers.
- Handlers returning polymorphic
Anyor multiple event types declare explicit return metadata when the current API requires it. - Saga logic has both trigger and no-command tests when conditions branch.
- Aggregate behavior is tested with
AggregateSpec; saga orchestration is tested withSagaSpec. - Projection and event processor side effects are outside aggregates.
- Tests use
me.ahoo.test.asserts.assert/.assert(). - Gradle commands use resolved module names from
settings.gradle.kts, not hard-codedapiordomainplaceholders. - Verification commands are reported exactly.
References
| Reference | When to Use | |-----------|-------------| | references/modeling.md | Aggregate pattern, bounded context, lifecycle, routing, state rebuild | | references/annotations.md | Annotation parameters and handler conventions | | references/testing.md | AggregateSpec, SagaSpec, verifier APIs, fork/ref, FluentAssert | | references/command-gateway.md | Wait plans, idempotency, LocalFirst, command rewriter, HTTP headers | | references/dsl.md | Query DSL operators, pagination, sort, projection, query execution | | references/configuration.md | Spring Boot starter configuration and feature switches | | references/prepare-key.md | PrepareKey uniqueness/reservation workflows |
Skill Maintenance
Run the skill lint before finishing changes to this skill set:
python3 scripts/skill_lint.py
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Ahoo-Wang
- Source: Ahoo-Wang/skills
- License: Apache-2.0
- Homepage: https://skills.ahoo.me/
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.