API Development & Modification
SkillCloud & infraWorkflow for API development and modification with strict checks from design to deployment
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the API Development & Modification skill
What this skill tells your AI
The instructions your AI receives, as published by oasm-platform/open-asm in .agents/skills/api/SKILL.md and read by ahel’s review.
When to Use
Use this when building new API endpoints or modifying existing ones in core-api/. Covers the full lifecycle from specification through implementation, testing, and generation.
Process
1. Requirement & API Specification
New API:
- Define inputs (data types, validation rules, constraints)
- Define outputs (response shape, return types, success/error codes)
- Define business logic (core flow, error scenarios, external dependencies)
- Consider performance (pagination, caching, rate limiting)
Existing API Modification:
- Document current behavior vs desired changes
- Assess breaking changes and backward compatibility
- Plan migration strategy for dependent clients
API Definition (all APIs):
- HTTP method, endpoint path, request body/query/params
- Swagger documentation via
@Doc() - Workspace handling:
getWorkspaceId: trueifworkspaceIdrequired - DTOs in
/dtoswithclass-validator - Standardized error format with
code,message,details
2. Implementation: Controller → Service
Controller: Routing, DTO validation, request/response mapping only. No business logic. New endpoints before /:id routes.
Service: All business logic. Strict typing, async/await. Consistent error handling with custom exceptions. Performance optimizations (pagination, caching, efficient queries).
Entity: Review schema consistency in src/common/entity/*. Proper indexing for frequently queried fields.
User Data Exposure: Responses limited to id, name, image.
DTO Rules: @ApiProperty() for Swagger & codegen. Accept minimum required input. Use DefaultMessageResponseDto for success messages.
3. Service Tests
Service tests are mandatory (*.service.spec.ts). Cover valid input, invalid input/edge cases, error handling, and performance. Mock all external dependencies. Use valid UUID v4+ via randomUUID.
4. Linting & Validation
ESLint and Prettier: 0 errors, 0 warnings.
5. Test Verification
All tests pass with 80%+ coverage for business logic.
6. Console API Generation
If new API or DTO changes were made, run task console:gen-api to regenerate client types.
7. Completion Summary
Document what was added/changed, list modified files, confirm tests ✅ lint ✅ coverage ✅, mark READY FOR REVIEW.
Standards
- HTTP Methods: GET (retrieve), POST (create), PUT (replace), PATCH (partial), DELETE (remove)
- Endpoint Routing: Plural nouns (
/users), hierarchical (/users/:userId/orders), consistent params (:userId) - DTOs: Mandatory for Body/Query/Params/Response. Validate with
class-validator. Success mutations return{ "message": "Success" }
Common Commands
# Test specific module
npm run test -- <path-to-spec-file>
# Generate console API client types
task console:gen-api
# Lint
npm run lint
Signals
- GitHub stars
- 187
- Forks
- 30
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
api-oasm-platform- Source
- github.com/oasm-platform/open-asm