open-index/open-npm huggingface dataset:
npm package: @subjektifylabs/subjektify-build
Description: A core tool designed to facilitate the build process the Subjekt model.
Author: Subjektify Labs
Latest version: 0.0.44

# @subjektifylabs/subjektify-build

[![NPM Version](http://img.shields.io/npm/v/@subjektifylabs/subjektify-build.svg?style=flat)](https://www.npmjs.org/package/@subjektifylabs/subjektify-build)

`subjektify-build` is a core package of the Subjektify toolkit, designed to facilitate the build process the Subjekt model. This package provides tools and utilities to parse, validate, and compile Subjekt model files, ensuring a seamless and efficient build workflow.

## Features

- **Model Parsing**: Parse Subjekt model files (.subjekt or JSON) to generate an Abstract Syntax Tree (AST) or a SubjektifyModel.
- **Validation**: Validate the structure and semantics of Subjekt models to ensure correctness.
- **Compilation**: Compile Subjekt models into executable code or other target formats.

## Installation

`subjektify-build` is already included in the [`subjektify`](https://www.npmjs.com/package/subjektify) package.

## Tasks

```bash
npx subjektify build
```

## Environment Extensions

The plugin adds a `model` object to the Subjektify Runtime Environment.

This object contains both the AST model and the semantic model for the Subjekt files configured.

## Usage

`subjektify-build` is configurable from the `subjektify.config.(js|ts)`. Here’s a basic example of how to use `subjektify-build` to parse and build a Subjekt model:

```ts title="subjektify.config.ts"
import { SubjektifyConfig } from "subjektify";

const config: SubjektifyConfig = {
  namespace: "my.namespace",
  version: "0.1.0",
  license: "MIT",
  build: {
    sources: ["subjects"],
    output: "build",
    projections: [
      {
        abstract: false,
        transformations: [
          {
            type: "excludeByTrait",
            args: { traits: ["internal"] },
          },
        ],
      },
    ],
  },
};

export default config;
```

## How it Works

1. **Model Parsing**: The build process starts by parsing Subjekt model files from the specified `sources`. These files should be in `.subjekt` format.
2. **Validation**: Once parsed, the models are validated to ensure they adhere to the expected syntax and semantics.
3. **Projections and Transformations**: The build configuration allows defining projections and transformations that modify or generate different views of the model. These transformations are applied based on the specified `projections`.
4. **Output**: Finally, the transformed models are written to the specified `output` directory.
npm package: @subjektifylabs/subjektify-clean
Description: Clear the cache and delete all the generated artifacts.
Author: Subjektify Labs
Latest version: 0.0.23

# @subjektifylabs/subjektify-clean

[![NPM Version](http://img.shields.io/npm/v/@subjektifylabs/subjektify-clean.svg?style=flat)](https://www.npmjs.org/package/@subjektifylabs/subjektify-clean)

`subjektify-clean` is a utility package designed to clean and remove generated files and artifacts from your Subjektify project. This helps maintain a tidy workspace and ensures that old or outdated files do not interfere with your development process.

## Features

- **Clean Artifacts**: Remove all generated files and build artifacts to maintain a clean workspace.
- **Customizable**: Specify custom directories or files to be cleaned.
- **Integration**: Seamlessly integrates with the Subjektify CLI for easy use.

## Installation

`subjektify-clean` is already included in the [`subjektify-toolbox`](https://www.npmjs.com/package/@subjektifylabs/subjektify-toolbox) package.

## Tasks

```bash
npx subjektify clean
```

This command will remove all generated files and build artifacts defined in your Subjektify configuration.

## Environment Extensions

No environment extensions.

## Usage

You can customize the cleaning process by specifying paths in your `subjektify.config.ts` file:

```ts title="subjektify.config.ts"
import { SubjektifyConfig } from "subjektify";
import "@subjektifylabs/subjektify-toolbox";

const config: SubjektifyConfig = {
  namespace: "my.dapp",
  version: "1.0.0",
  license: "MIT",
  clean: {
    paths: ["dist", "build", "artifacts"],
  },
};

export default config;
```

In this example, the `clean` property specifies an array of paths that will be cleaned when you run the `npx subjektify clean` command. This ensures that all generated files and directories are removed, keeping your workspace clean and organized.
npm package: @subjektifylabs/subjektify-codegen
Description: A core tool designed to facilitate the code generation process the Subjekt model.
Author: Subjektify Labs
Latest version: 0.0.50

# @subjektifylabs/subjektify-codegen

[![NPM Version](http://img.shields.io/npm/v/@subjektifylabs/subjektify-codegen.svg?style=flat)](https://www.npmjs.org/package/@subjektifylabs/subjektify-codegen)

`subjektify-codegen` is a core package of the Subjektify toolkit, designed to facilitate code generation from the Subjekt model. This package provides tools and utilities to generate client, server, and smart contract code from Subjekt model files, ensuring a seamless and efficient development workflow.

## Features

- **Code Generation**: Generate client, server, and smart contract code from Subjekt model files (.subjekt or JSON).
- **Customizable Output**: Support for various output formats and customization options to fit your project's needs.
- **Integration with Build Tools**: Easily integrates with common build tools and CI/CD pipelines to automate the code generation process.

## Installation

`subjektify-codegen` is already included in the [`subjektify`](https://www.npmjs.com/package/subjektify) package.

## Tasks

```bash
npx subjektify codegen
```

## Environment Extensions

The plugin adds a `model` object to the Subjektify Runtime Environment, containing both the AST model and the semantic model for the Subjekt files configured.

## Usage

`subjektify-codegen` is configurable from the `subjektify.config.(js|ts)`. Here’s a basic example of how to use `subjektify-codegen` to generate code from a Subjekt model:

```ts title="subjektify.config.ts"
import { SubjektifyConfig, CodeGenTarget, CodeGenLanguage } from "subjektify";

const config: SubjektifyConfig = {
  namespace: "my.namespace",
  version: "0.1.0",
  license: "MIT",
  codegen: [
    {
      target: CodeGenTarget.Client,
      language: CodeGenLanguage.TypeScript,
      outputDirectory: "generated/client",
    },
    {
      target: CodeGenTarget.Server,
      language: CodeGenLanguage.TypeScript,
      outputDirectory: "generated/server",
    },
    {
      target: CodeGenTarget.Contract,
      language: CodeGenLanguage.Solidity,
      outputDirectory: "generated/contracts",
    },
  ],
};

export default config;
```

## How it Works

1. **Configuration Parsing**: The code generation process begins by reading the `subjektify.config.(js|ts)` file to determine the specified code generation targets and settings.
2. **Model Loading**: The Subjekt model is loaded and parsed from the configured sources.
3. **Code Generation**: Based on the target and language specified in the configuration, the appropriate code generation strategy is applied:
   - **Client Code**: Generates client-side code (e.g., TypeScript or JavaScript).
   - **Server Code**: Generates server-side code (e.g., TypeScript or JavaScript with frameworks like Express).
   - **Smart Contract Code**: Generates smart contract code (e.g., Solidity).
4. **Output**: The generated code is written to the specified `outputDirectory`, organized by target and language.
npm package: @subjektifylabs/subjektify-watch
Description: Hot reloading of Subjekt models in your Subjektify project.
Author: Subjektify Labs
Latest version: 0.0.1

# @subjektifylabs/subjektify-watch

[![NPM Version](http://img.shields.io/npm/v/@subjektifylabs/subjektify-watch.svg?style=flat)](https://www.npmjs.org/package/@subjektifylabs/subjektify-watch)

`subjektify-watch` is a utility package designed to enable hot reloading of Subjekt models in your Subjektify project. This helps enhance the development experience by providing real-time updates and feedback as you modify your models.

## Features

- **File Watching**: Automatically detect changes in Subjekt model files and reload them.
- **Real-time Feedback**: Provides instant feedback on model changes to streamline the development process.
- **State Preservation**: Ensures the current state of the application is preserved when models are reloaded.

## Installation

`subjektify-watch` is already included in the [`subjektify-toolbox`](https://www.npmjs.com/package/@subjektifylabs/subjektify-toolbox) package.

## Tasks

```bash
npx subjektify watch
```

This command will start watching for changes in Subjekt model files and automatically reload them as needed.

## Environment Extensions

`subjektify-watch` extends the Subjektify runtime environment by providing additional tasks and configuration options for hot loading.

## Usage

To use `subjektify-watch`, simply run the following command in your project directory:

```bash
npx subjektify watch
```

### Example Configuration

You can customize the file watching process by specifying paths in your `subjektify.config.ts` file:

```ts title="subjektify.config.ts"
import { SubjektifyConfig } from 'subjektify';
import "@subjektifylabs/subjektify-toolbox";

const config: SubjektifyConfig = {
    namespace: "my.dapp",
    version: "1.0.0",
    license: "MIT",
    watch: {
        paths: ["src/models"],
    }
};

export default config;
```

In this example, the `watch` property specifies an array of paths that will be monitored for changes. When changes are detected, the corresponding models will be reloaded automatically, ensuring a seamless development experience.

## How it Works

1. **File Watching**: The package uses a file-watching library to monitor specified directories for changes to Subjekt model files.
2. **Model Parsing and Validation**: When a change is detected, the modified files are re-parsed and validated to ensure correctness.
3. **Dynamic Model Injection**: The updated models are dynamically injected into the running application without requiring a full restart.
4. **State Management**: The current state of the application is preserved and synchronized with the updated models to maintain consistency.
npm package: @sublang/cligent
Description: Unified TypeScript SDK for AI coding agent CLIs (Claude Code, Codex CLI, Gemini CLI, OpenCode, and more)
Latest version: 0.2.0

<!-- SPDX-License-Identifier: Apache-2.0 -->
<!-- SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai> -->

# cligent

[![npm version](https://img.shields.io/npm/v/@sublang/cligent)](https://www.npmjs.com/package/@sublang/cligent)
[![Node.js](https://img.shields.io/node/v/@sublang/cligent)](https://nodejs.org/)
[![CI](https://github.com/sublang-dev/cligent/actions/workflows/ci.yml/badge.svg)](https://github.com/sublang-dev/cligent/actions/workflows/ci.yml)

Unified TypeScript SDK for AI coding agent CLIs (Claude Code, Codex CLI, Gemini CLI, OpenCode, and more).

Register an adapter, send a prompt, and consume a single async event stream — regardless of which agent runs underneath.

## Install

```bash
npm install @sublang/cligent
```

## Quick start

```ts
import { Cligent } from '@sublang/cligent';
import { ClaudeCodeAdapter } from '@sublang/cligent/adapters/claude-code';

// Cligent wraps an adapter with role identity, session continuity,
// option merging, and protocol hardening.
const agent = new Cligent(new ClaudeCodeAdapter(), {
  role: 'coder',
  model: 'claude-opus-4-6',
});

for await (const event of agent.run('Refactor auth module')) {
  if (event.type === 'text_delta') process.stdout.write(event.payload.delta);
  if (event.type === 'done') console.log('\nDone:', event.payload.status);
}

// Session continuity — the next run auto-resumes the previous session.
for await (const event of agent.run('Now add tests for it')) {
  // ...
}
```

## Supported agents

- **Claude Code** — via `@anthropic-ai/claude-agent-sdk`
- **Codex CLI** — via `@openai/codex-sdk`
- **Gemini CLI** — via child-process NDJSON
- **OpenCode** — via `@opencode-ai/sdk`

## Documentation

See [docs/guide.md](docs/guide.md) for the `Cligent` class, adapters, permissions, session continuity, parallel execution, and more.

## Contributing

We welcome contributions of all kinds. If you'd like to help:

- [Open an issue](https://github.com/sublang-dev/cligent/issues) for bugs or feature requests.
- [Open a PR](https://github.com/sublang-dev/cligent/pulls) for fixes or improvements.
- Discuss on [Discord](https://discord.gg/cxUsykWr) for support or new ideas.

🌟 Star our repo if you find it useful — it helps others discover the project.

## License

Apache-2.0
npm package: @sublang/spex
Description: The essential spec layer AI agents need to build software reliably
Latest version: 0.1.1

<!-- SPDX-License-Identifier: Apache-2.0 -->
<!-- SPDX-FileCopyrightText: 2026 SubLang International <https://sublang.ai> -->

# spex

[![npm version](https://img.shields.io/npm/v/@sublang/spex)](https://www.npmjs.com/package/@sublang/spex)
[![Node.js](https://img.shields.io/node/v/@sublang/spex)](https://nodejs.org/)
[![CI](https://github.com/sublang-ai/spex/actions/workflows/ci.yml/badge.svg)](https://github.com/sublang-ai/spex/actions/workflows/ci.yml)

*The essential spec layer AI agents need to build software reliably.*

Scaffolds a `specs/` directory so AI coding agents can read and follow
your project's requirements and design.

## Install

```sh
npm install -g @sublang/spex
```

Or run once without installing:

```sh
npx @sublang/spex scaffold
```

## Usage

```sh
spex scaffold
```

This creates:

- **`specs/`** — directories and starter templates for writing behavioral
  specs, decision records, and iteration plans
- **`CLAUDE.md` / `AGENTS.md`** — instructions that tell AI agents (Claude,
  Codex, etc.) to read and follow the specs before writing code

See `specs/decisions/000-spec-structure-format.md` for the spec format and naming conventions.

Idempotency: Rerunning is safe — existing files and directories are skipped.

**Try it:** review the sample iteration `specs/iterations/000-spdx-headers.md`, update the copyright text, then prompt your AI coding agent:

```text
Complete Iteration #0
```

## Workflow

Spex does *not* enforce a heavyweight workflow.
We believe spec-driven development is a flexible combination of a few primitives.

1. **Make Decisions** — Discuss requirements, architecture, and design with AI agents. Let AI generate and review decision records in `specs/decisions/`.
2. **Plan Iterations** — Break down work into tasks with AI agents. Let AI generate and review iteration records in `specs/iterations/`.
3. **Agents Execute** — Let AI agents complete the tasks autonomously. They generate code and update `specs/items/`.

Then loop back to the next decision or iteration.

## Requirements

- Node.js >= 20
- Git (optional, used for repo root detection)

## Contributing

We welcome contributions of all kinds. If you'd like to help:

- 🌟 Star our repo if you find spex useful.
- [Open an issue](https://github.com/sublang-ai/spex/issues) for bugs or feature requests.
- [Open a PR](https://github.com/sublang-ai/spex/pulls) for fixes or improvements.
- Discuss on [Discord](https://discord.gg/XxTPjNqy9g) for support or new ideas.

## License

[Apache-2.0](LICENSE)