Install
$ agentstack add skill-tairitsua-monica-monica-application-project-unit-development ✓ 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.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Monica Application ProjectUnit Development
Overview
Use this skill for unit-level application development in Monica-based DDD projects. It defines the common ProjectUnit language shared by both monica-application-microservice and monica-application-modular-monolith.
Workflow
- Start with the architecture skill to choose the target subdomain, project, and folder layout.
- Read [00-project-unit-overview.md](references/00-project-unit-overview.md) and [02-project-unit-composition-map.md](references/02-project-unit-composition-map.md) to identify the units the feature needs.
- Load only the template references relevant to the units you are creating or changing.
- Keep the boundary thin:
ApplicationServicereturnsRes, while internalDomainService, repository, and entity logic stay on normal .NET return types and exceptions. - Prefer rich entities and value objects over procedural handlers that directly mutate persistence state.
Ground Rules
- Use Monica-native base classes and interfaces only. Do not introduce
Our*wrappers or FIPS-specific conventions. - Follow the naming, placement, and boundary rules in [01-project-unit-naming-and-boundaries.md](references/01-project-unit-naming-and-boundaries.md). These rules are aligned with the current
Monica.Framework/ProjectUnitsdiscovery behavior. - Keep persistence concerns in repositories and persistence classes, not in request handlers.
- Keep repository implementations in the owning subdomain or service infrastructure boundary. Do not move a repository or adapter to
Platformjust because it uses an external library; only project-common reusable infrastructure belongs inPlatform. - Keep contracts stable: requests, DTOs, and events are not persistence entities.
- If a handler returns
Res, useRes.Ok(value)instead ofRes.Ok(value)to avoid the non-generic string overload. - For HTTP-exposed
ApplicationServicehandlers, prefer the controller route patternapi/{version}/{DomainName(PascalCase)}and keep only the request-specific segment on the handler method, such asGET api/v1/Documentation/tree. - If host composition must consume a
ConfigurationProjectUnit during registration, registerMo.AddConfiguration(...)first and then callMo.RegisterInstantly(builder)before the dependent registration code runs.
Reference Navigation
- Unit catalog and responsibilities: [00-project-unit-overview.md](references/00-project-unit-overview.md)
- Naming, placement, and boundary rules: [01-project-unit-naming-and-boundaries.md](references/01-project-unit-naming-and-boundaries.md)
- Unit selection by feature shape: [02-project-unit-composition-map.md](references/02-project-unit-composition-map.md)
ApplicationServicetemplates: [10-application-service-template.md](references/10-application-service-template.md)DomainServicetemplates: [11-domain-service-template.md](references/11-domain-service-template.md)- Entity, request, and event templates: [12-entity-request-event-template.md](references/12-entity-request-event-template.md)
- Repository and DbContext templates: [13-repository-and-persistence-template.md](references/13-repository-and-persistence-template.md)
- Event handler templates: [14-event-handler-template.md](references/14-event-handler-template.md)
- Job templates: [15-job-template.md](references/15-job-template.md)
- Configuration templates: [16-configuration-template.md](references/16-configuration-template.md)
- Completion checklist: [17-feature-checklist.md](references/17-feature-checklist.md)
Scope Notes
- This skill is architecture-agnostic. It explains unit design, not solution topology.
- Use
monica-application-microserviceto decide service splits, published-language layout, and migration project boundaries. - Use
monica-application-modular-monolithto decide module splits, host composition, and cross-module contracts.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: Tairitsua
- Source: Tairitsua/Monica
- License: MIT
- Homepage: https://monica.dpdns.org/
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.