Skip to content

Tasks and sessions

When you ask Cosine to do work, Cosine keeps track of the request, conversation, context, and results. Across Cloud, CLI, Desktop, and VS Code, this work is organized into tasks, sessions, turns, and projects.

These concepts appear whenever you ask Cosine to answer a question, inspect a codebase, make a change, or continue work from where you left off.

  • Project — The repository or workspace Cosine works in. This typically corresponds to a GitHub repository, though in Desktop you can also work with local directories that are not Git repositories.
  • Task — The goal or piece of work you ask Cosine to complete
  • Session — The conversation and working context used to carry out the work
  • Turn — One cycle of interaction: you send a prompt, Cosine works on it, and the agent returns a response

These concepts are ordered from largest to smallest: a project is the workspace Cosine works in, a task is the goal inside that project, a session carries the context for the work, and each turn is one prompt-and-response cycle that moves the task forward.

A project is the workspace Cosine works in. In Cloud, a project is created from an imported repository. In the CLI and Desktop, you link a local directory as a project.

Projects provide:

  • A shared codebase context for tasks in that project
  • Team-wide settings, integrations, and environment configuration
  • Agent commits, diffs, and merge history

A task is a single unit of work you give to Cosine. It has a goal, a history of turns, and an outcome.

  • You create a task by describing what you want Cosine to do
  • A task can span many turns as Cosine asks questions, makes edits, and validates its work
  • You can retry a task or continue the conversation within it as many times as needed
  • In Cloud, tasks can be reviewed, approved, and merged from the dashboard

A session is a saved conversation and working context. Sessions are especially visible in the CLI and Desktop, where they include:

  • Conversation history and timeline
  • Active mode, model, and reasoning settings
  • Working directory and linked projects
  • MCP server connections and skill discovery

Sessions persist across restarts, so you can resume work without losing context.

A turn is one full run of Cosine for a single prompt. It starts when you send a message and ends when Cosine has finished reasoning, used any tools, made edits, and the interface is ready for your next input.

A single task can contain many turns:

  1. You: “Fix the auth bug”
  2. Cosine: (plans, explores, asks a question) — turn 1
  3. You: “Yes, that’s the right file”
  4. Cosine: (edits the file, runs tests, reports back) — turn 2
  5. You: “Now update the docs too”
  6. Cosine: (edits docs) — turn 3

Cosine preserves state in several ways:

  • Session history — Resume a previous CLI or Desktop session
  • Agent commits — Per-turn Git commits that capture exactly what changed
  • Memory — Saved facts and conventions that Cosine recalls in future sessions
  • Cloud tasks — Browser-based tasks with full timeline and diff review