---
title: "Кеңістіктер мен жобалар"
description: "Кеңістік — оқшауланған қор әрі қауіпсіздік шекарасы; жоба — оның ішіндегі агент тұрақты атаумен жүгінетін белгіленген қалта."
---

# Кеңістіктер мен жобалар

Notarium ұйымдастырудың екі бірлігін ажыратады: **кеңістік** (space) — оқшауланған қор әрі қауіпсіздік шекарасы, және **жоба** — кеңістіктің ішіндегі белгіленген қалта. Бұл — әртүрлі міндеті бар түрлі нысандар: кеңістік оқшаулайды, жоба жұмысты ұйымдастырады.

## Кеңістік — оқшаулау бірлігі

Кеңістік — өзіне-өзі жеткілікті білім қоры: өз индексі, графы, іздеуі, ағашы, тарих журналы және өз қатысушылар құрамы бар. Кеңістіктер қиылыспайды: біреуінің жазбалары, іздеуі мен байланыстары екіншісінен көрінбейді. Кеңістік бірден екі рөл атқарады — ұйымдастыру («жеке» / «жұмыс» / «мұрағат») және **қауіпсіздік шекарасы**: кім нені көретіні дәл кеңістік деңгейінде шешіледі.

- Әр кеңістікке нақ бір қозғалтқыш данасы қызмет етеді — оқшаулауды сәулеттің өзі қамтамасыз етеді.
- Кеңістіктің бірегейлігі — тұрақты ішкі `space_id`; **slug** (URL-safe: кіші латын әріптері, цифрлар, дефистер мен астын сызулар — `[a-z0-9_-]`) — қайта аталатын мекенжай әрі URL-хэндл, ал `displayName` — адам оқитын белгі. Slug-ты қайта атау қауіпсіз: ескі атау alias-тарихқа өтіп, әрі қарай резолвтеле береді (`/s/<ескі>` ағымдағыға редиректтейді).
- Мекенжайлау: интерфейсте `/s/<slug>` және REST-те `/api/s/<slug>/…`.

Рөлдер мен құпиялылық туралы толығырақ — [Қатынау моделі](/docs/concepts/access-model/) бөлімінде.

## Жеке кеңістік

Әр пайдаланушыда **жеке кеңістік** — оның әдепкі үйі — кепілдікпен болады:

- ол есептік жазба берілгенде құрылады және **жойылмайды**;
- әдепкі лендинг ретінде қызмет етеді әрі агенттердің сіз туралы жеке жадын мен профиліңізді сақтайды;
- бұл — толыққанды жұмыс кеңістігі: бөлек ештеңе ашпай-ақ, онда бірден жазба жүргізіп, жобаларды белгілеуге болады.

> [!important] Жеке кеңістікке екінші қатысушыны шақыруға болмайды
> Бұл — жеке кеңістіктің әдеттегіден жалғыз айырмашылығы. Оқуға қатынауы бар басқа қатысушы сіздің жеке жадыңыз бен жеке жазбаларыңызды көрер еді — сондықтан жеке кеңістікке шақырулар интерфейсте жасырылып қана қоймай, серверде тыйым салынған.

## Жоба — белгіленген қалта

Жоба — **жеңіл, міндетті емес нысан**: кеңістіктің ішіндегі жоба деп белгіленген қарапайым қалта-ішкіағаш. Контент міндетті түрде жобаларда тұрмауы да мүмкін — белгіленбеген қалта жай ғана қалта болып қала береді.

Белгі — қалтаның түбіріндегі `.notariummeta` dot-файлы (тұрақты `id` бар JSON). Ол кез келген жылжытуда, оның ішінде **сыртқы** (git, файл менеджері) жылжытуда да қалтамен бірге саяхаттайды — жобаның бірегейлігі тек дерекқорда емес, қалтаның өзінде зәкірленеді.

```md
myspace/
├─ research/
│  └─ .notariummeta      ← белгіленген қалта = жоба
├─ inbox/                ← қарапайым қалта (жоба емес)
└─ ...
```

- **Мекенжайлау — `(space, slug)` хэндлі** GitLab-тың `group/project` моделі бойынша. Жобаның slug-ы кеңістік ішінде бірегей; кеңістіктер арасындағы аттас жобаларды `space` өрісі ажыратады. Түбірлік жоба жай ғана `<space>`-ке жиырылады (мысалы, `main`, `main/main` емес).
- **Жобаның slug-ы** — `displayName`-нен немесе жолдың соңғы сегментінен (бүкіл жолдан емес) транслитерацияланған kebab-тұлға.
- **Қалтаны белгілеу, белгіні алып тастау немесе «New project» құру — адамның әрекеттері** (`space:write` рұқсаты). Агент контейнерлер құрмайды: ол мазмұнның иесі, ал адам — құрылымның иесі.
- **Кеңістік құру оның түбірін жоба ретінде автоматты белгілейді** — агент қолмен белгілемей-ақ, `<space>`-ке бірден жаза алуы үшін.

Жоба — ауқым әрі мекенжай, бірақ **қауіпсіздік шекарасы емес**: қатынау туралы шешім әрдайым кеңістіктегі мүшелікте қалады. Агент жобаларды қалай мекенжайлайтыны — [Ниет құралдары](/docs/agents/intent-tools/) бөлімінде.

> [!note] Талаптар мен шекаралар
> Жобалар қызметтік дерекқор мен жергілікті белгілер қоймасына сүйенеді — оларсыз жобаны ашу мүмкін емес.
