
Product
Socket for Asana Is Now Available
Create and manage Asana tasks directly from Socket alerts, with manual task creation, automated ticketing rules, and two-way sync.
@0disoft/service-catalog-generator
Advanced tools
Read-only service.yaml compiler and linter for deterministic service catalog artifacts.
Status: Stable 1.x Scope: infra Repository Type: cli-tool Addons: github-action, docs-site
Service Catalog Generator is a read-only service.yaml compiler and linter for turning
repository-local service manifests into deterministic catalog artifacts.
The project starts from a deliberately narrow idea: each service repository owns a compact manifest,
and this tool scans those files to produce validation results, catalog.json, graph.dot, and a
static HTML report. Generated artifacts are derived output. The original truth remains the checked-in
manifest in the owning repository.
This is not a live CMDB, Backstage replacement, cloud discovery platform, permissions portal, or service editor. Its useful edge is manifest-first validation that can run locally and in CI.
scg scan --json
scg check --fail-on-warning
scg report --format json --format dot --format html
scg completion powershell
scg report treats its output path as a dedicated generated directory. It stages a complete report
generation, excludes concurrent SCG writers, and replaces the previous generation as a directory so
JSON, DOT, and HTML files cannot be mixed across runs. Existing directories containing files other
than SCG report artifacts are rejected instead of overwritten.
SCG manifests use scg.service/v1 by default. Pre-1.0 scg.service/v1alpha1 manifests and
scg.config/v1alpha1 config files remain accepted throughout 1.x and normalize to the stable v1
contract. Generated catalog JSON uses scg.catalog/v1.
Existing ZDP v2 manifests can be read through the explicit adapter:
scg scan --json --input-schema zdp-v2 --allow-unknown-dependencies
The ZDP adapter normalizes records into SCG catalog output and preserves ZDP-specific fields under
extensions.zdp. ZDP policy validation remains owned by zdp-architecture-linter.
A standalone native scg-v1 consumer fixture with two services, strict dependency resolution, and
its own config lives under examples/native-consumer. Packed-package and GitHub Action smoke tests
both compile that fixture so native behavior does not depend on the ZDP adapter.
The repository also consumes the published
@0disoft/openfeature-local-provider@1.0.0 package from the normal registry. Its
examples/openfeature-consumer/flags.json snapshot selects JSON and HTML report formats through
OpenFeature before the consumer-conformance runner invokes the built SCG CLI. This is a
repository-owned integration fixture, not a new SCG command flag or an independent-maintainer
adoption claim.
examples/monorepo-consumer models a repository with independently owned apps and platform
roots, different manifest filenames, and a cross-root service dependency. The normal conformance
gate executes this example through the built public CLI so source-scoped monorepo behavior cannot
drift into a documentation-only claim.
One run can compile explicitly partitioned native and ZDP roots through source-scoped config:
scg report --config examples/mixed-consumer/scg.config.yaml
The mixed fixture resolves a native-to-ZDP dependency in one catalog. When sources is present,
put root, manifestNames, and inputSchema in each source and omit legacy --root, --manifest,
and --input-schema flags.
For a ZDP platform catalog run, materialize each repository root service.yaml under a temporary
manifest directory and build a derived report from that directory:
scg report `
--root .tmp/service-catalog/manifests `
--input-schema zdp-v2 `
--allow-unknown-dependencies `
--format json `
--format dot `
--format html `
--out .tmp/service-catalog/catalog
service.yaml v1alpha1.service.yaml manifests through an explicit input adapter.scg-v1 and zdp-v2 source roots into one catalog without schema autodetection..editorconfig, .gitattributes, and .gitignore are generated to keep line endings, binary diffs, local files, build outputs, caches, and secret files under control.
Confirmed implementation decisions are TypeScript, Node.js 24 LTS, pnpm workspace, npm package
distribution, CLI binary scg, Apache-2.0 licensing, and a root GitHub Action metadata file.
Generated real catalog reports are CI/internal artifacts by default; public examples must be
synthetic. These decisions are documented in ADRs and still require normal implementation review
before source code is introduced.
FAQs
Read-only service.yaml compiler and linter for deterministic service catalog artifacts.
The npm package @0disoft/service-catalog-generator receives a total of 78 weekly downloads. As such, @0disoft/service-catalog-generator popularity was classified as not popular.
We found that @0disoft/service-catalog-generator demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Product
Create and manage Asana tasks directly from Socket alerts, with manual task creation, automated ticketing rules, and two-way sync.

Security News
Open VSX has removed three extension IDs from its malicious-extension list as the legitimate publishers they impersonated move to claim the names for themselves.

Product
Socket’s PHP and Composer support is now in Beta for all customers, with PHP reachability analysis generally available.