Skip to content

Define safe shell sync engine and SourceChannel shell policy #8

@mdheller

Description

@mdheller

Objective

Integrate sourceos-shell with the SourceOS/SociOS governed local-first agentic graph foundation.

The shell lane must treat shell profiles, aliases, functions, PATH changes, environment templates, and command templates as executable control surfaces.

Required work

  • Define sourceos.sync.shell manifest.
  • Define shell profile object fixtures.
  • Define command template policy fixtures.
  • Block raw shell history sync by default.
  • Redact secret-bearing environment state.
  • Require policy review for executable shell profile changes.
  • Emit audit events for shell profile changes, command template changes, policy denials, and SourceChannel shell requests.
  • Add .sourceos/manifest.json declaring owned schemas, sync engine, policy classes, dangerous surfaces, and audit events.

Dangerous surfaces

  • shell.profile.apply
  • shell.alias.add
  • shell.function.add
  • shell.path.update
  • shell.env_template.update
  • shell.command_template.apply
  • shell.remote_command.execute

Acceptance criteria

  • sourceos.sync.shell is documented and fixture-backed.
  • Shell history is not synced by default.
  • Secret-bearing environment state is explicitly redacted.
  • Executable shell changes require policy decision and audit pointer.
  • .sourceos/manifest.json validates against the sourceos-spec manifest contract once available.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions