Claude Skill

goga-cell-cpp

C++ CODEMANIFEST contract implementation rules

LLM Mart · 0 points · 15 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download qarium-goga-goga_assets_skills_goga-cell-cpp-f1257db.zip · 1 KB
qarium/goga 31 0 forks BSD-3-Clause Updated 6d ago
Part of qarium/goga — 72 skills

Install

skills CLI npx skills add https://github.com/qarium/goga/tree/1.2.x/goga/assets/skills/goga-cell-cpp
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install qarium-goga@llmmart
Git git clone https://github.com/qarium/goga.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole qarium/goga collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

C++: Contract Implementation Rules

Language skill for C++.

Apply the specification in the context of the calling skill. Do not retell the content — use it for decision-making.

Invoked through the goga-lang-disp router.


Examples

Full CODEMANIFEST example for C++ with all DSL constructs:

Imports:
  - Types:
      - Buffer
      - StreamConfig AS Config
    Usages:
      - memory_layout
    From: path/to/stream_cell

Usages:
  conventions: .goga/usages/cpp_conventions.md
  pattern: |
    Use RAII for resource management. Prefer stack allocation over heap allocation.
  testing: |
    Use Catch2. Each public function must have test coverage.

Annotations: |
  Use `conventions` for code style.
  Use `testing` for test requirements.
  Use `memory_layout` from Imports for buffer alignment rules.

  Use value semantics only. No raw pointers or references in public API.

---

"lookup_entry(std::string key) -> value: int":
  location: engine.hpp
  annotations: |
    Look up an entry by key.

    `key`: lookup key string
    `value`: found value or 0 if not found

    Use `pattern` for implementation.

"Parser(input: std::string)":
  location: parser.hpp
  annotations: |
    Configurable parser for structured input.

    `input`: raw input string

    Use `memory_layout` from Imports for buffer sizing.
    Use `conventions` for code style.
  properties:
    "position -> int": |
      Current parsing position.
    "length -> int": |
      Total input length.
  methods:
    "parse() -> tokens: std::vector<std::string>": |
      Parse input into tokens.

      `tokens`: parsed token list

      Use `pattern` for implementation.
    "reset()": |
      Reset parser state to beginning.

"Buffer::StreamBuffer(config: Config)":
  location: stream.hpp
  annotations: |
    Stream buffer extending Buffer with configurable capacity.

    `config`: buffer configuration from `Config` type.

    Use `memory_layout` from Imports for allocation strategy.

->Buffer: {}

---

Author: Goga
CreatedAt: 22/05/26
Description: |
  Example CODEMANIFEST demonstrating all DSL constructs for C++.

Cell

A cell is a directory with a public header:

cell/
├── CODEMANIFEST
├── cell.hpp

Language Features

Facade: the header file (cell.hpp) defines the public API. Everything declared in the header within the cell namespace constitutes the facade. Implementation resides in the corresponding .cpp files.

Naming: PascalCase for user-defined classes and structs, snake_case for functions and variables. Standard library types (std::string, std::vector) are used as-is (snake_case).

Namespace: each cell uses its own namespace for isolation.

Constructors: the Entity signature describes the class constructor. Constructor parameters are the input data.

Memory: pointers, references, and smart pointers are forbidden in the contract. Use value semantics.

Construct Mapping

C++ CODEMANIFEST Note
class / struct in namespace Entity Constructor → Entity signature
Free function in namespace Routine
Public member variable Property
Public member function Method
Constructor Entity signature

Implementation

  • Public API defined in header
  • Use namespace per cell

Signature Rules

Allowed:

std::string
int, double, bool
std::vector<T>
std::map<K, V>
std::optional<T>

Forbidden:

pointers (*T)
references (&, &&)
smart pointers
void*
templates in DSL

Files (goga)
  • SKILL.md 3.8 KB
    ---
    name: goga-cell-cpp
    description: C++ CODEMANIFEST contract implementation rules
    ---
    # C++: Contract Implementation Rules
    
    Language skill for C++.
    
    Apply the specification in the context of the calling skill. Do not retell the content — use it
    for decision-making.
    
    Invoked through the `goga-lang-disp` router.
    
    ---
    
    ## Examples
    
    Full CODEMANIFEST example for C++ with all DSL constructs:
    
    ```yaml
    Imports:
      - Types:
          - Buffer
          - StreamConfig AS Config
        Usages:
          - memory_layout
        From: path/to/stream_cell
    
    Usages:
      conventions: .goga/usages/cpp_conventions.md
      pattern: |
        Use RAII for resource management. Prefer stack allocation over heap allocation.
      testing: |
        Use Catch2. Each public function must have test coverage.
    
    Annotations: |
      Use `conventions` for code style.
      Use `testing` for test requirements.
      Use `memory_layout` from Imports for buffer alignment rules.
    
      Use value semantics only. No raw pointers or references in public API.
    
    ---
    
    "lookup_entry(std::string key) -> value: int":
      location: engine.hpp
      annotations: |
        Look up an entry by key.
    
        `key`: lookup key string
        `value`: found value or 0 if not found
    
        Use `pattern` for implementation.
    
    "Parser(input: std::string)":
      location: parser.hpp
      annotations: |
        Configurable parser for structured input.
    
        `input`: raw input string
    
        Use `memory_layout` from Imports for buffer sizing.
        Use `conventions` for code style.
      properties:
        "position -> int": |
          Current parsing position.
        "length -> int": |
          Total input length.
      methods:
        "parse() -> tokens: std::vector<std::string>": |
          Parse input into tokens.
    
          `tokens`: parsed token list
    
          Use `pattern` for implementation.
        "reset()": |
          Reset parser state to beginning.
    
    "Buffer::StreamBuffer(config: Config)":
      location: stream.hpp
      annotations: |
        Stream buffer extending Buffer with configurable capacity.
    
        `config`: buffer configuration from `Config` type.
    
        Use `memory_layout` from Imports for allocation strategy.
    
    ->Buffer: {}
    
    ---
    
    Author: Goga
    CreatedAt: 22/05/26
    Description: |
      Example CODEMANIFEST demonstrating all DSL constructs for C++.
    ```
    
    ## Cell
    
    A cell is a directory with a public header:
    
    ```
    cell/
    ├── CODEMANIFEST
    ├── cell.hpp
    ```
    
    ## Language Features
    
    **Facade**: the header file (`cell.hpp`) defines the public API. Everything declared in the header within the cell namespace
    constitutes the facade. Implementation resides in the corresponding `.cpp` files.
    
    **Naming**: PascalCase for user-defined classes and structs, snake_case for functions and variables.
    Standard library types (`std::string`, `std::vector`) are used as-is (snake_case).
    
    **Namespace**: each cell uses its own namespace for isolation.
    
    **Constructors**: the Entity signature describes the class constructor. Constructor parameters are the input data.
    
    **Memory**: pointers, references, and smart pointers are forbidden in the contract. Use value semantics.
    
    ## Construct Mapping
    
    | C++                            | CODEMANIFEST     | Note                          |
    |--------------------------------|------------------|-------------------------------|
    | `class` / `struct` in namespace | Entity           | Constructor → Entity signature |
    | Free function in namespace     | Routine          |                               |
    | Public member variable         | Property         |                               |
    | Public member function         | Method           |                               |
    | Constructor                    | Entity signature |                               |
    
    ## Implementation
    
    - Public API defined in header
    - Use namespace per cell
    
    ## Signature Rules
    
    Allowed:
    ```
    std::string
    int, double, bool
    std::vector<T>
    std::map<K, V>
    std::optional<T>
    ```
    
    Forbidden:
    ```
    pointers (*T)
    references (&, &&)
    smart pointers
    void*
    templates in DSL
    ```
    
    ---
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related