agentsclimarketplace

Scaffold archipy service

Skill SyntaxArc/archipy-plugin/skills/scaffold-archipy-service

Scaffold a thin ArchiPy service (FastAPI router or gRPC servicer) and note AppUtils / FastAPIConfig bootstrap. Use when adding HTTP/gRPC transport under services/{domain}/v{n}/.From its SKILL.md

Install
npx -y skills add SyntaxArc/archipy-plugin --skill scaffold-archipy-service

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

1.8 KB, as published. Nobody here has run it

Scaffold ArchiPy Service

Before writing files

Ask the user for:

  1. Domain name (e.g. user)
  2. API version (default v1)
  3. Transport: FastAPI (default) or gRPC (sync vs async)

Prefer ArchiPy

uv add "archipy[fastapi]"   # HTTP
uv add "archipy[grpc]"      # gRPC

Generate

services/<domain>/v{n}/
└── <domain>_service.py

FastAPI

  • Thin router: request → domain *InputDTO → logic → *OutputDTO.
  • Export create_router(container) (or equivalent) for manage.py / app factory.
  • Map domain errors to HTTP status; no business rules / atomic UoW decorators here.

gRPC

  • Thin servicer calling logic; sync servicers with AppUtils.create_grpc_app, async with create_async_grpc_app.
  • Do not mix sync/async servicer styles on one server.

Bootstrap (entrypoint)

Prefer AppUtils — do not hand-roll bare FastAPI() / grpc.server():

from archipy.helpers.utils.app_utils import AppUtils
from archipy.configs.base_config import BaseConfig

app = AppUtils.create_fastapi_app()
app.include_router(create_user_v1_router(container))

uvicorn in manage.py from config.FASTAPI (SERVE_HOST, SERVE_PORT, RELOAD, PROXY_HEADERS, FORWARDED_ALLOW_IPS).

Constraints

  • Version in path (v1, v2), not in business logic.
  • Do not re-implement CORS/exception handlers/stock gRPC interceptors AppUtils already wires.
  • Wire logic via DI container.

Docs

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.