Merge the three repositories into one monorepo
nisse-core's history becomes the repo root; the spec moves to docs/ at top level; nisse-dev and nisse-ops fold in as package directories, their seed histories (pointer files only) discarded. Pointer READMEs and CLAUDE.mds are rewritten for in-tree paths. Rationale: for a solo operator the three-repo split tripled admin surface (tokens, CI, webhooks, permissions, backups) and imposed a version-pinning contract on nisse-core, while the repo boundary was never a trust boundary — the VM is. The spec's Part H is updated in the next commit to record the decision. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
defa0a9214
commit
94aa51135f
7 files changed
+69
-10
No files matched your search
@@ -0,0 +1,9 @@
|
||||
# Nisse
|
||||
|
||||
Monorepo for two self-hosted AI agents (`nisse-dev`, `nisse-ops`) over a shared
|
||||
library (`nisse-core`), one package per directory.
|
||||
|
||||
**Read the architecture before making design decisions.** The system-level
|
||||
specification is `docs/Architecture-Build-Spec.md`. Requirements that look like
|
||||
free choices — gating structure, state durability, LLM access paths, permission
|
||||
policy — are usually settled there.
|
||||
@@ -1,16 +1,22 @@
|
||||
# nisse-core
|
||||
# Nisse
|
||||
|
||||
The shared library both Nisse agents sit on (Part A of the specification), and the
|
||||
home of the system-level design documentation.
|
||||
Two self-hosted AI agents sharing a common library, named for the Nordic farm
|
||||
spirit that keeps the place running overnight and expects to be treated well in
|
||||
return.
|
||||
|
||||
The library itself does not exist yet: it is extracted from `nisse-dev` once that
|
||||
agent works, at step 10 of the build order. Until then this repository carries the
|
||||
specification.
|
||||
| Package | Role |
|
||||
|---|---|
|
||||
| [`nisse-core/`](nisse-core/) | Shared library both agents sit on (Part A) |
|
||||
| [`nisse-dev/`](nisse-dev/) | Dev Agent — plans and implements software projects (Part B) |
|
||||
| [`nisse-ops/`](nisse-ops/) | Sysadmin Agent — operates infrastructure (Part C) |
|
||||
|
||||
One repository, three packages. The library does not exist as code yet: it is
|
||||
extracted from `nisse-dev` once that agent works (build-order step 10), as a
|
||||
package split within this tree.
|
||||
|
||||
## Architecture
|
||||
|
||||
docs/Architecture-Build-Spec.md
|
||||
|
||||
Covers the shared library (Part A), the Dev Agent `nisse-dev` (Part B), the Sysadmin
|
||||
Agent `nisse-ops` (Part C), the supporting services, the build order, and the
|
||||
The system-level specification lives at
|
||||
[`docs/Architecture-Build-Spec.md`](docs/Architecture-Build-Spec.md). It covers the
|
||||
shared library, both agents, the supporting services, the build order, and the
|
||||
remaining open decisions.
|
||||
@@ -0,0 +1,8 @@
|
||||
# nisse-core
|
||||
|
||||
The shared library both Nisse agents sit on (Part A of the specification).
|
||||
|
||||
It does not exist as code yet: it is extracted from `nisse-dev` once that agent
|
||||
works, at step 10 of the build order — a package split within this repository.
|
||||
Until then this directory is a placeholder holding the seam the extraction will
|
||||
land on.
|
||||
@@ -0,0 +1,10 @@
|
||||
# nisse-dev
|
||||
|
||||
The Dev Agent (Part B of the Nisse system). A thin application over the shared
|
||||
`nisse-core` package.
|
||||
|
||||
**Read the architecture before making design decisions here:**
|
||||
`docs/Architecture-Build-Spec.md` at the repo root. Part B specifies this agent;
|
||||
Part A specifies the library contracts it depends on. Requirements that look like
|
||||
free choices in this package — gating structure, state durability, LLM access
|
||||
paths — are usually settled there.
|
||||
@@ -0,0 +1,8 @@
|
||||
# nisse-dev
|
||||
|
||||
The Dev Agent: plans and implements software projects, produces Gitea PRs for human
|
||||
review, and reacts to review comments and commits. A thin application over the
|
||||
shared `nisse-core` library.
|
||||
|
||||
**Part B** of the specification at [`../docs/Architecture-Build-Spec.md`](../docs/Architecture-Build-Spec.md)
|
||||
covers this agent; **Part A** covers the library it sits on.
|
||||
@@ -0,0 +1,10 @@
|
||||
# nisse-ops
|
||||
|
||||
The Sysadmin Agent (Part C of the Nisse system). A thin application over the shared
|
||||
`nisse-core` package.
|
||||
|
||||
**Read the architecture before making design decisions here:**
|
||||
`docs/Architecture-Build-Spec.md` at the repo root. Part C specifies this agent;
|
||||
Part A specifies the library contracts it depends on. Requirements that look like
|
||||
free choices in this package — the permission policy engine, confirm-first gating,
|
||||
secrets and SSO handling — are usually settled there.
|
||||
@@ -0,0 +1,8 @@
|
||||
# nisse-ops
|
||||
|
||||
The Sysadmin Agent: operates and maintains infrastructure, driven by Vikunja
|
||||
tickets, gated on high-consequence actions. A thin application over the shared
|
||||
`nisse-core` library. Built after the Dev Agent works.
|
||||
|
||||
**Part C** of the specification at [`../docs/Architecture-Build-Spec.md`](../docs/Architecture-Build-Spec.md)
|
||||
covers this agent; **Part A** covers the library it sits on.
|
||||
Reference in new issue
Block a user