Confluye
Features

Command artifacts

Attach ready Workspace Files to Confluye Command jobs and publish labeled job outputs.

Command jobs can carry attachments (inputs) and artifacts (outputs). Both are Workspace File ids in the job's workspace. Files must be ready or the bind fails with 423.

See Command Center for chat planning. This page covers only the implemented file binding.

Attachments (inputs)

POST /api/v1/fluxus-command/jobs accepts threadId, message, and optional attachmentFileIds (unique non-empty strings). Before enqueue, ids are validated (getFile + status === "ready"). After the job row exists, attach upserts references resourceType: "run", resourceId: jobId, default lease 24 hours, then stores serialized file refs on the job.

If a later id fails partway, already-bound run references are removed (removeReference) and the job is left without persisted attachments.

Detach exists on the service (detach) for Command runtime cleanup; there is no dedicated public detach route in jobs/[id]/artifacts.

The session Files UI lists job artifacts and links downloads through /api/files/{fileId}/content?workspaceId=….

Artifacts (outputs)

POST /api/v1/fluxus-command/jobs/{id}/artifacts

Body fieldRules
fileIdRequired non-empty string. File must be ready in this workspace.
labelRequired string; blank trim falls back to the file name.
kindOptional: document, presentation, image, data, other.
incompleteOptional boolean; defaults to true.

Creates or updates the artifact for that fileId (stable id and createdAt on update). Adds an artifact reference (no lease expiry). HTTP 201 { job }. Unknown job or missing artifact on complete: 404. File not ready: 423.

POST /api/v1/fluxus-command/jobs/{id}/artifacts/{fileId}/complete sets incomplete: false for that file. Concurrent publish of a second file is allowed; complete of one does not drop the other.

Keys with workspace.secret.read or workspace.write can read attachments/artifacts on GET /api/v1/fluxus-command/jobs/{id} ({ job }). Viewer reads return the versioned safe job projection and omit prompts, traces, confirmations, attachments, and artifacts. List jobs: GET /api/v1/fluxus-command/jobs follows the same projection rule.

Authorization

All Command v1 job routes require a workspace API key (401 / 403 same messages as Files). Workspace is the key. Mutations require Idempotency-Key.

Gaps

  • No GET .../artifacts collection; inspect the job object.
  • Publish does not upload bytes; the file must already exist and be ready.
  • Default incomplete: true means operators must call complete (or pass incomplete: false) for a finished artifact.
  • Attachments vs artifacts use different reference types (run vs artifact) and lease policy.

Next steps