Your first manifest

Once npm run desktop:dev has opened the ConfigForge window (or you're running an installed build), register a tiny manifest end-to-end so you can confirm the round-trip works before authoring anything real. No CLI install required - registration works in Editor mode.

Minimal Windows manifest

Save this as hello.osc.yaml (or just paste it directly into the editor - you don't have to write it to disk first):

resources:
  - name: hello-cfs-registry
    type: Microsoft.Windows/Registry
    properties:
      keyPath: HKLM\Software\ConfigForge
      valueName: HelloFromCFS
      valueType: String
      value: "1"

Tip: YAML is two-space-indented; tabs are rejected by the parser. The resources: key must be a top-level array, not a string or map. Microsoft.Windows/Registry resources must declare all three of keyPath, valueName, and valueType. See Reference → Manifest schema for the full grammar.

Minimal Linux manifest

resources:
  - name: hello-cfs-osconfig
    type: Microsoft.OSConfig/Test
    properties:
      resource: SshdConfig
      expression: "PermitRootLogin == 'no'"
      compliance: equal

Register

In the UI:

  1. Open My Baselines in the sidebar, then click Register New.
  2. Paste your YAML, upload a .osc.yaml / .json / .csv file, or edit settings directly in the Visual spreadsheet.
  3. Pick the target platform (Windows or Linux). The editor's validation adjusts accordingly.
  4. Click Register Baseline.

You should see a success banner and the manifest in the list. If you're authoring a Windows manifest on Linux (or vice versa), you'll get a soft warnings[] entry instead of a hard error - that's by design (see Architecture → Registration semantics).

To open the editor afterwards: My Baselines → click the baseline row. The detail/editor view loads with Code / Visual modes, version history, and the Audit Pack button in both editions. The Full edition also shows device deploy/audit controls gated on CLI presence.

Confirm via CLI (optional)

If you have the OSConfig CLI installed and want to cross-check what ConfigForge wrote into the namespace, open an elevated PowerShell (or sudo shell on Linux):

$ oscfg get namespace
hello

$ oscfg get resource -n hello
hello-cfs-registry  Microsoft.Windows/Registry  ...

Note: oscfg doesn't always emit machine-readable output in the preview build. ConfigForge wraps the CLI to scrub the telemetry preamble and surface only the payload - see Architecture → oscfg CLI contract.

Inspect the on-disk state

~/.configforge/manifests/
├── hello.json              ← registration metadata
└── hello.source.yaml       ← lossless source manifest

The .json file holds the platform-detection result, resource summary, and any soft warnings. The .source.yaml is the YAML you posted; it's what the Export action returns and what the Audit-pack embeds.

Next steps

  • Try the editor to build a manifest from a form rather than YAML.
  • Compare manifests on the Diff page: Pairwise, CIS Diff, or Matrix.
  • Score a manifest against a CIS benchmark using Benchmark Mapping (requires user-supplied CIS data files - see that page for setup).
  • Install the OSConfig CLI from the OSConfig CLI docs to light up Deploy / Audit / Revert in the Full edition.