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

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions