Open app →
Documentation

Projects and Tasks

Create projects with permanent keys, then plan and ship work with Linear-style tasks: KEY-numbered identifiers, statuses and priorities, assignees, labels, due dates, the board and list views, My Tasks, comments, and saved views.

Projects and tasks: the core of CompanyOS

Projects are how you group a stream of work, and tasks are the individual pieces of that work. Together they are the spine that everything else in CompanyOS hangs off: meetings turn into tasks, notes spin off tasks, the activity log records every status change, and your notifications and inbox are driven by tasks you are assigned to or watching. If you have used Linear, the model will feel familiar. Every task gets a short, human identifier like WEB-42, moves through a small set of statuses, and lives on a board you can drag work across.

Where this lives
Projects live at company.chele.bi → Projects. Each project opens to its own workspace with tabs for Overview, Board, Tasks, Meetings, Notes, and Members. My Tasks in the sidebar collects everything assigned to you across every project.

Projects

What a project is

A project is a named container for related work, scoped to your organization. It holds tasks, meetings, and notes, plus a living brief (the Overview) where you write the vision and pin links. Each project has a unique key (the short prefix in front of every task number), an active or archived status, an optional lead and target date, and a set of members who can see and work in it. Projects can also be attached to a team.

The project key

The key is the most important decision you make when creating a project, because it becomes permanent shorthand for every task inside it. A project keyed WEB produces tasks WEB-1, WEB-2, WEB-3, and so on. The key must be 2 to 6 uppercase letters (WEB, OPS, GROWTH) and must be unique within your organization — two projects cannot share a key. Pick something short and obvious; it is what people will type and say out loud.

Choose the key carefully
The key is set at creation and is not editable afterward through the app. The name, description, lead, target date, team, and status can all be changed later, but task identifiers are built from the key, so changing it would rewrite every identifier. Get it right the first time.

Creating a project

  1. Open Projects and click New project
    From the Projects page, click New project. If you have no projects yet, the empty state offers the same button plus a shortcut to import work from a meeting.
  2. Enter a name
    Type a clear name like "Website redesign". The name must be at least 2 characters and can be up to 255.
  3. Set the key
    Enter 2 to 6 uppercase letters, for example WEB. The field forces uppercase. If a project in your org already uses that key, creation is rejected and you will need a different one.
  4. Add a description (optional)
    Describe what the project is about. You can flesh this out later in the Overview brief with rich formatting, mentions, and links.
  5. Create
    Click Create project. You are now a member of it automatically, and you land in its workspace ready to add tasks.

When you create a project you become its first member. Behind the scenes the org also records a "project created" entry in the activity log, so the team can see it appear.

The Overview brief

The Overview tab is a living brief, not a static description. It is a full rich-text editor: type / for blocks (headings, lists, and more) and @ to mention a teammate or link a task. It autosaves as you type, showing a "Saving…" / "Saved" indicator, and you can flip to a clean preview with the eye icon. A sidebar shows project metadata (key, status, member count, created date) and a Linked artifacts list where you paste Figma files, docs, PRs, or any URL with an optional label. Plain domains get https:// added for you.

Project settings you can change

After creation you can update the project's name, description, status (active or archived), assigned team, lead, and target date. Archiving a project keeps it and its history intact but takes it out of active flow — archived projects show an "Archived" badge, and you cannot create or change tasks inside an archived project until you set it active again.

FieldEditable laterNotes
NameYes1–255 characters.
KeyNo2–6 uppercase letters, unique per org. Fixed at creation.
Description / briefYesEdited as rich text in the Overview tab, autosaved.
StatusYesActive or Archived. Archiving freezes task editing.
TeamYesOptional owning team.
LeadYesOptional person who owns the project.
Target dateYesOptional ship date.

Project members

Members are the people who can work in a project. Assignees must be members — you cannot assign a task to someone who is not on the project. Adding and removing members is an admin action, done from the Members tab. A few rules keep projects sane: a person must already belong to your organization before you can add them to a project, you cannot remove yourself, and a project must always keep at least one member, so the last member cannot be removed. When you are added to a project, you get a notification.

Independently of membership, you can subscribe to a project to opt into its notification stream. Subscribing and unsubscribing is a personal toggle and does not affect your access or anyone else's.

Deleting and restoring a project

Deleting a project is an admin action and is a soft delete — the project disappears from the active list but is recoverable for 30 days. Within that window an admin can view deleted projects and restore one back to active. After 30 days it falls out of the recovery window and can no longer be restored.

Archive vs delete
Archive when work is done but you want to keep the project visible and its history browsable. Delete only when you want it gone — and remember you have a 30-day grace period to undo it.

Tasks: the Linear-style system

Every task gets a stable identifier of the form KEY-number, for example WEB-42. The number is assigned per project and counts up from 1: the first task in the WEB project is WEB-1, the next is WEB-2, and so on. Numbering is allocated under a per-project lock, so even if several people create tasks at the same moment, no two tasks ever collide on a number and there are no gaps from race conditions. The identifier is what you reference in conversation, search, and links.

Statuses and the workflow

A task moves through a fixed set of statuses. Five of them appear as columns on the board, in this order:

StatusWhat it meansCategory
BacklogCaptured but not committed to.Backlog
TodoCommitted, not started.Unstarted
In ProgressActively being worked on.Started
In ReviewWork done, awaiting review.Started
DoneCompleted.Completed
CancelledDropped, will not be done.Cancelled

There is also a Duplicate status used when a task is folded into another; it is treated like Cancelled for progress and is not shown as its own board column. Each status maps to an immutable category — Backlog, Unstarted, Started, Completed, or Cancelled. Categories are the stable spine that progress math and focus ordering read, so the system understands "this is started work" regardless of the exact status label.

How progress is calculated
A project's progress bar and a parent task's sub-task pill both use category math. Cancelled and Duplicate tasks are excluded from the total entirely (they do not drag your percentage down), and only Completed counts toward done. So progress reflects real, in-flight work — not abandoned work.

Priorities

Priority orders attention. The levels, highest to lowest, are Urgent, High, Medium, Low, and No priority (the default). Priority drives the ordering in My Tasks and in priority swimlanes on the board. Marking a task Urgent when it has an assignee sends that person an urgent notification, so it is a real signal, not just a color.

Assignees

A task can have one assignee, and the assignee must be a member of the project. Assigning someone (other than yourself) notifies them and auto-subscribes them so they follow the task. You can clear an assignee to leave a task unassigned. The assignee dropdown only lists people who are on the project.

Labels

Labels are org-scoped tags with a name and a color, shared across all projects. You create them once for the organization (each name is unique) and then attach any number of them to a task. Labels are useful for cross-cutting themes like "design", "infra", or "customer-request". You can filter and you can delete a label org-wide when it is no longer needed.

Due dates

Any task can carry an optional due date. For bugs, if you do not set one, CompanyOS derives a due date automatically from the bug's severity as an SLA: Critical is due in 1 day, High in 3, Medium in 7, and Low in 30. (More on bugs below.)

Tasks vs bugs

A task has a kind: an ordinary Task, or a Bug. A bug must always have a severity (Low, Medium, High, or Critical) — you cannot save a bug without one, and switching a bug back to a plain task clears the severity. Severity drives the SLA due date above and shows as a badge on the card. This supports a zero-bug practice where every bug carries an explicit severity and deadline.

Creating tasks

There are several ways to add a task, from fastest to most detailed.

Inline on the board (fastest)

  1. Open a project's Board tab
    Each status column has an Add task affordance at the bottom (and a + in the column header). You can also press the c shortcut.
  2. Type a title and press Enter
    The task is created instantly in that column's status. The composer stays open so you can keep adding tasks one after another.
  3. Switch to Bug if needed
    A small Task / Bug toggle lets you create the row as a bug (severity defaults to Medium). For more fields, click Add details to open the full dialog with your title carried over.

The full New task dialog

From the board's Add details, the Tasks tab's New task button, or the c shortcut, you get the full form. Here you set the title (required), a description (supports context, links, acceptance criteria), the type (Task or Bug, with severity when it is a bug), and the starting status, priority, and assignee. The assignee list is limited to project members.

From meetings and notes

Tasks can be created with provenance — a link back to the meeting or note they came from. You can batch-create several tasks at once from a list of text lines (for example, action items extracted from a meeting), all sharing the same source. When a meeting-derived task is later marked Done, CompanyOS records that back on the meeting and notifies the attendees, closing the loop.

Sub-tasks

A task can have sub-tasks, managed from the task detail panel. Sub-tasks live in the same project as their parent and are limited to one level — a sub-task cannot itself have sub-tasks. The parent shows a progress pill (for example 2/5) computed from its sub-tasks using category math, so cancelled sub-tasks do not count against it.

Updating, moving, and transitioning tasks

Editing fields

Open any task to edit it. The title and description save when you click away (on blur). Status, priority, assignee, type, and severity each have their own picker in the detail panel and apply the moment you change them. You can also change labels and due date. There is a short grace window right after a task is created during which routine edits do not spam the activity log — useful while you are still filling a task in.

Moving a task between statuses

On the board, move a task by opening its card menu (the … on hover) and picking a new status under Move to, which lists every status except the current one. On the list view and detail panel you change status from the Status picker. Every transition is recorded in the activity log with the from/to statuses. Transitioning to Done on a meeting-sourced task fires the meeting loop-closing described above, and status changes can also trigger your triage automations.

Bulk actions

On the board and the list, you can select multiple tasks (click, Shift-click for a range, Cmd/Ctrl-click to toggle). A floating action bar then lets you set Status, Priority, or Assignee on all of them at once, or Archive the selection (which sets them to Cancelled). Press X to clear the selection.

From a task's detail you can link it to another task as blocks, blocked by, or related. A task that is blocked by an open (not Done or Cancelled) task shows a Blocked badge on its card, so you can see at a glance what is stuck. "Related" is symmetric, and "blocked by" is just the inverse of "blocks" — the system stores one canonical direction and shows you the right label from each task's point of view.

Deleting a task

Deleting a task removes it permanently (it is recorded in the activity log by identifier). Unlike projects, task deletion is not a recoverable soft-delete, so delete only when you are sure. To drop a task without losing the record, set it to Cancelled instead.

The board view

The Board tab lays tasks out as Kanban columns, one per status, in workflow order. A progress bar at the top shows the project's completion percentage and completed/total count. Across the top you also get a Filter box (matches title or identifier), status and assignee filters, a Group by control, and Display options.

Swimlanes (Group by)

You can group the board into swimlanes by Assignee or Priority (or None for a flat board). With swimlanes on, each person or priority gets its own row of columns, with counts, and you can collapse and expand lanes (press t to collapse or expand all).

Display options

Display options let you control what each card shows — identifier, priority, assignee, labels, due date, sub-task progress, blocked/severity badges — and whether to show empty status columns. These are per-surface preferences.

Keyboard and quick create

Press c to create a task, f to jump to the filter, t to toggle swimlanes, and Cmd/Ctrl+B to flip between board and list. Each board column also has an inline composer so you can add work without leaving the board.

The list (Tasks) view

The Tasks tab is a dense table of the same tasks, with sortable-feeling columns for Task, Status, Priority, Assignee, Labels, Due, Progress, and Updated. You choose which columns appear via Display options, and a density toggle switches between comfortable and compact rows. The same Filter, status, and assignee controls apply, and a counter shows "X of Y" when a filter is active. Double-click a row to open the task; single-click and Shift/Cmd-click select rows for bulk actions.

Saved views and filters

Once you have dialed in a useful combination of filter text, status filter, assignee filter, grouping, and density, you can save it as a view so you can return to it in one click. Saved views live per project and per surface (the board has its own set, the list has its own).

  1. Set up the filters you want
    Adjust the search, status, assignee, and grouping/density until the board or list shows exactly the slice you care about.
  2. Save the view
    In the Views bar, click Save view (or Save current as view…), give it a name, and confirm. It appears as a pill you can click to re-apply.
  3. Make one your default
    Pin a view as the default (the star) so it loads automatically when you open the project. You can clear the default at any time.
  4. Update, rename, or delete
    When you tweak an active view, a dot marks it as having unsaved changes — choose Update to overwrite it. You can also rename or delete views from the Views menu.
Where saved views are stored
These board and list views are saved in your browser, so they are personal to you on that device. A separate, org-level views capability also exists in the platform with personal-vs-team scopes and a shared default, where team views can be managed by admins.

Task detail

Opening a task brings up a full detail panel. The left side holds the title and description (rich, autosaving on blur); the right rail holds Status, Priority, Assignee, Type, and Severity (for bugs). At the top you can subscribe / unsubscribe with the bell to control whether the task feeds your inbox. Below the editor you get an AI context panel, a sub-tasks panel (for top-level tasks), a relations panel, and tabs for Comments and Activity.

Comments

The Comments tab is the discussion thread on a task. Write a comment and post it; it shows with the author and a relative timestamp. Commenting on a task notifies the assignee, and every comment is recorded in the activity log. You can edit or delete your own comments (admins can moderate others'). The board and list cards also surface the latest comment and a comment count, so active discussions are visible without opening the task.

Activity

The Activity tab is the full timeline for that task — creation, status changes, assignments, priority changes, comments, and more — so you always have an audit trail of how a task got to where it is.

My Tasks

My Tasks (in the sidebar) gathers everything assigned to you across all your active projects into one focused list, so you do not have to hop between projects to see your plate. Instead of grouping by raw status, it groups by focus, in this order:

  • Urgent — anything you have marked urgent, surfaced first.
  • Blocking — work that is holding up other tasks.
  • In progress — what you are actively working on.
  • Up next — committed but not started.
  • Backlog — captured, not yet committed.
  • Done — completed and cancelled, at the bottom.

Within each group, started work floats to the top, then higher priority, then most recently updated. Each row shows the status dot, priority, the KEY-number identifier, the title, a context line, the project key badge, and when it was last updated. A summary line tells you how many tasks are assigned across how many projects. Click any task to jump into its project. The platform also exposes related personal slices — tasks you created, tasks you are subscribed to (watching), and a recent activity feed — that power your broader my-work and inbox surfaces.

A good daily rhythm
Start in My Tasks to see your focus-ordered plate, work the Urgent and In progress groups first, then drop into each project's Board to move work across columns and unblock anything showing a Blocked badge.