A space is a named group of projects that you work on together: your job, your personal projects, the open source you contribute to. CodeAlta Desktop shows one space at a time, with its projects, its sessions and its tabs.
The first time CodeAlta Desktop starts, it creates two empty spaces, Work and Personal. Fill them, rename them or delete them: a space you delete does not come back.
The space switch is in the title bar, before the zoom and the theme switch. It shows the icon and the name of the space the window shows. With the Default space alone, it is an icon.
Click it, or press Ctrl+G Ctrl+V, to open the list of your spaces:
Ctrl+G 1 to Ctrl+G 9, and marks that say what its sessions are doing;When you show another space, the Explorer lists the projects of that space, and the tabs change to the ones you left there: sessions, code editors, Changes, terminals, and the Work items, Issues and Automations tabs, with their layout. Each space has its own tabs, and they come back when you show the space again, also after a restart.
Choose New space… in the space switch, or run /new_space.
A space created from the title bar is shown at once.
An empty space says No project in this space yet. Its Add projects… button opens Settings > Spaces.
Add a folder with the + button of the Explorer, or with Open project, while a space is shown: the new project joins that space. A folder that is already a project of another space joins the shown one too.
Settings > Spaces shows every space with its projects. Open it with Organize spaces… in the space switch, or with /spaces.
Change the name, the icon, the color or the description on the card. The Default space can be changed the same way. Every change is saved at once.
To choose the projects of a space with the mouse:
| Drag a project | What happens |
|---|---|
| From the list onto a card | The project joins that space. |
| From a card onto another card | The project moves to the other space. With Ctrl or Alt held, it stays in both. |
| From a card back to the list | The project leaves that space. |
With the keyboard, Projects on a card opens a checklist of all the projects: tick the ones the space holds. The × of a project on a card removes it from that space.
A card also has:
Deleting a space leaves its projects, their folders and their sessions alone. The projects stay in the Default space and in their other spaces.
Everything the window lists is what the shown space has:
Ctrl+P): projects, sessions and files;Automations belong to the application: their tab lists every project in every space.
When you open a session whose project is not in the shown space, from a link, a work item or an automation, the window shows the Default space first.
With more than the Default space, the foot of the Explorer has one small button for each space, with its icon. The shown space is marked. Click a button to show its space.
A mark on a button says what the sessions of that space are doing:
| Mark | Meaning |
|---|---|
| Waiting | A session waits for you: a question, a command to review, or a form to fill. |
| Failed | The last run of a session failed. |
| Running | Sessions are running. |
| Background | A provider works in the background. |
When a session waits for you or failed in a space that is not shown:
| Action | Shortcut or command |
|---|---|
| Open the space switch | Ctrl+G Ctrl+V or /space |
| Show the space at a place of the list (Default is 1) | Ctrl+G 1 to Ctrl+G 9 |
| Previous space / next space | Ctrl+Alt+PageUp / Ctrl+Alt+PageDown, or /space_prev / /space_next |
| Create a space | /new_space |
| Organize spaces | /spaces |
The previous and next space keys also work while a terminal has the keyboard. All of these commands are in the search (Ctrl+P) and in the help (F1).
Sessions read and change spaces with alta space. Ask in your own words:
Which projects are in my Work space?
Create a space named Clients for the two Contoso projects, and show it.
An agent reads What it is for of each space, so a clear description helps it choose the right projects. When a session lists the projects, it gets those of the space the window shows, unless you ask for another space or for all of them.
An agent shows another space in the window only when you ask for it.
Each space is a Markdown file in ~/.alta/spaces/, named after the id of the space. The id comes from the first name of the space, in lower case with - between words, and stays the same when you rename the space.
---
id: open-source
kind: space
name: Open source
icon: globe
color: "#9d3f9d"
order: 3
---
Libraries I maintain and the projects I contribute to.
The text under the header is What it is for. order is the place of the space in the list. The Default space has a file, default.md, only once you change its name, its icon, its color or its description.
The spaces of a project are written in the file of the project, ~/.alta/projects/<name>.md, as one line of its header that lists the ids of its spaces:
spaces: [work, open-source]
A project that is only in the Default space has no spaces line. An id that no space has is ignored.
Which space the window shows, and the tabs of each space, are kept with the window, like its theme.
CodeAlta TUI does not show spaces: it lists every project. Its agents still have the alta space commands, to read and organize the spaces that CodeAlta Desktop shows.