AnnexOffice – Manual
1. Overview
AnnexOffice is the office and administration hub of the AnnexCREATE suite. It is aimed at freelancers, the self-employed and small agencies who want to manage customers, projects, time and invoices in one place. The app bundles slim project management with invoicing and DATEV export, and it integrates the word processor (AnnexTextKit) and the spreadsheet (AnnexCalcKit) directly as dedicated work areas.
Core benefits:
- Customers, projects, tasks, time, quotes, invoices and approvals in a single document.
- Invoicing with a number range and automatic totals (net/VAT/gross).
- Quotes with their own number range and one-click conversion into invoices.
- DATEV export of outgoing invoices as a booking batch (EXTF).
- Embedded word processor and spreadsheet as dedicated work areas.
AnnexOffice is part of the "Creative OS": the app shares the design system, asset library, brand kits and diagnostics with the other apps. Via open formats, the asset library and MCP automation it integrates into existing workflows.
2. Installation & activation
AnnexOffice is obtained and managed via AnnexHub:
- Download & updates: AnnexHub is the central place for apps, updates and licenses.
- License activation: centrally via AnnexHub (AnnexLicenseKit); offline activation possible.
- Offline operation: AnnexOffice is offline-first and runs without a server connection; all data stays local on the Mac.
3. Basic workflow
The typical flow from launch to an invoice:
- Launch: open AnnexOffice from AnnexHub or open an existing
.axoffice(File ▸ Open…, ⌘O). - Get an overview: check the metrics on the dashboard (customers, projects, open tasks/invoices, revenue).
- Create a customer: create a customer via the plus button in customer management.
- Create a project: create a project with a customer reference, budget and hourly rate.
- Track tasks & time: create tasks for the project and book working time.
- Create a document: create a quote and, once accepted, convert it into an invoice with one click – or create an invoice with line items directly.
- Save & export: save as
.axoffice(⌘S) and, if needed, produce a DATEV export of the outgoing invoices.
4. Core features
4.1 Workspace, menu bar & dashboard
AnnexOffice uses the suite's three-column design: left sidebar with section navigation and asset library, the work area in the middle, the inspector on the right; transparent title bar and branded app header. The menu bar (wired via WindowActions, .commands) offers:
File ▸ Open…– ⌘OFile ▸ New Quote…– ⌥⌘NFile ▸ Convert Quote to Invoice– no shortcutFile ▸ Save…– ⌘SAnnexOffice ▸ Settings…– ⌘,
The dashboard shows metric tiles (customers, projects, open tasks, open invoices, revenue total, approvals) as well as the five most recently active projects.
4.2 Customer management
The customer base (CustomerListView, model Customer) holds, per customer, a contact person, email, phone, address, VAT ID, payment terms and a default discount. You create customers via the plus button.
4.3 Project management
Projects (ProjectListView, model Project) have a customer reference, a status workflow (Draft → Requested → In Progress → In Approval → Completed/Cancelled), a budget, an hourly rate, a start date, a deadline and notes.
4.4 Task management
Tasks (TaskListView, model Task) belong to a project and have a status (Open/In Progress/In Review/Done), a priority (Low/Medium/High), a deadline, an estimated effort and notes.
4.5 Time tracking
Time entries (TimeTrackingView, model TimeEntry) have a project and optional task reference, a start/end time and a note. The hours are calculated automatically (durationHours); per-project totals are available via OfficeDocument.totalHours.
4.6 Invoicing
Invoices (InvoiceListView, InvoiceDetailView, model Invoice) get their number from the number range (format RE-<year>-<sequence>, e.g. RE-2026-0001). They have an issue and due date (default 14 days), a status (Draft/Sent/Paid/Overdue/Cancelled) and free line items (description, quantity, unit price). The totals – net, VAT (tax rate per invoice, default 19 %) and gross – are calculated automatically. Via drag & drop you attach assets from the suite library to invoices as receipts/references (with thumbnails and a remove function).
4.7 Quotes
Quotes (QuoteListView, QuoteDetailView, model Quote) are a separate document type with their own list in the sidebar, their own number range (ANG-<year>-<sequence>), a status workflow (Draft/Sent/Accepted/Rejected), a validity date (default 30 days) and free line items with the same totals as invoices. The key function "Convert to invoice" creates a real invoice with one click – same line items, customer and amounts, a new number from the invoice range – marks the quote as accepted and links both documents bidirectionally. Quotes that were already converted are locked against double conversion.
4.8 Approvals
The approval workflow (ApprovalListView, models Approval/ApprovalRevision) manages approvals for creative drafts with a project reference, asset links, a revision history and a status selection directly in the list (Pending/Approved/Rejected/Needs Revision). You import .axapproval files via a file dialog.
4.9 Embedded word processor & spreadsheet
AnnexOffice integrates both office editors as dedicated work areas:
- Word processor: the full AnnexText editor (
TextDocumentEditorViewfrom AnnexTextKit). Export as DOCX and ODT. - Spreadsheet: the full AnnexCalc editor (
SpreadsheetEditorViewfrom AnnexCalcKit) with a formula engine. Export as XLSX, ODS and CSV.
Export happens via the export dialog in the editor in each case.
4.10 DATEV export
The DATEV export (DATEVExportSheet, DATEVExportService) offers a dialog with a period, a chart of accounts (SKR03/SKR04), a debtor start account and consultant/client numbers. It produces a booking batch of the outgoing invoices as a real file. For format details see section 5.
4.11 Brand kits & assets
- Brand kits: you link brand kits from the suite library to the document via the inspector; their assets appear as quick access in the sidebar – a click copies the local file path to the clipboard.
- Asset library: the suite-wide
AssetLibraryView(AnnexAssetKit) is firmly embedded in the sidebar.
5. Formats & interoperability
- Native format
.axoffice: an Annex container (AnnexCoreKitAnnexDocument) with anoffice.jsonsnapshot (customers, projects, tasks, time, invoices, quotes, approvals, brand-kit links). Saving and opening are wired (⌘O/⌘S); if loading fails, an error alert appears instead of silent sample data. Files from before stage 0.2.M (without quotes) load backward-compatibly with an empty quote list. - DATEV export: a booking batch in EXTF format (format version 13) as CSV – UTF-8, CRLF, semicolon separation, decimal comma. One booking line per invoice (debtor against revenue account), VAT key 9 (19 %) or 2 (7 %), tax-free sales on SKR03 8125 / SKR04 4125; debtor accounts are assigned stably from the customer base in the range 10000–69999.
- Document export (HTML/PDF):
PDFExportServiceproduces invoices and quotes as an HTML file and as a real PDF (A4 rendering with a line-item table, totals block and notes). The service is implemented; wiring it to the interface is still to come. - Approval exchange: import of
.axapprovalfiles (AnnexInteropKitApprovalExchangeService) via a file dialog; conversion between Office approvals and the suite-wide exchange format is implemented in both directions. - Export from the embedded editors: text documents as DOCX/ODT (AnnexTextKit), sheets as XLSX/ODS/CSV (AnnexCalcKit).
- Suite interop: asset references from the shared asset library (incl. drag & drop onto invoices and thumbnail display) and brand-kit links via the suite-wide
BrandkitLibrary. - Central search (AnnexHub): when saving, the document is written best-effort into the shared version index (
SharedVersionIndexStore) and thus shows up in the AnnexHub search. - iCloud/cloud sync: not wired.
6. MCP operation
The MCP host runs in AnnexHub, JSON-RPC 2.0 over STDIO, and is started from there. This makes opening AnnexOffice documents reachable for AI agents and automation.
Suite-wide tools (for all apps): list_apps, open_app, open_document, get_active_document, get_license_status, search_assets.
App-specific tool for AnnexOffice:
office.open_document– opens an AnnexOffice document.
Skills (suite-wide): suite.discover, brandkit.apply.
AnnexHub itself provides no tools of its own, but it is the starting point: the MCP host is started from there.
7. Diagnostics & privacy
AnnexOffice logs errors and actions locally via AnnexDiagnosticsKit into rotating JSON log files under ~/Library/Logs/AnnexCREATE/AnnexOffice/, mirrored to os_log (subsystem com.annexcreative.annexoffice), with a PII filter. Diagnostics are enabled by default during development and can be switched off in the settings (Privacy); nothing is transmitted. AnnexOffice logs, among other things, saving/loading, invoice and DATEV exports, approval imports and error cases. Telemetry is wired (TelemetryClient.shared.configure) and runs strictly on opt-in (off by default). All data stays on the Mac.
8. FAQ
Does AnnexOffice need an internet connection? No. The app is offline-first and runs without a server connection; cloud sync is not wired.
How do I assign invoice numbers?
Automatically from the number range in the format RE-<year>-<sequence> (e.g. RE-2026-0001). Quotes have their own range (ANG-…).
Can I turn a quote into an invoice? Yes. With one click ("Convert to invoice") a real invoice is created with the same line items and a new invoice number; quote and invoice are linked bidirectionally, and double conversion is locked.
Can I send invoices as a PDF?
The HTML/PDF export for invoices and quotes exists as a service (PDFExportService), but it is not yet reachable through the interface; sending by email is missing.
How do I edit customers, projects or invoices in detail? The detail editing is still slim: the lists allow creation, but dedicated edit forms for customers, projects, tasks and time entries are still missing; the invoice detail view is currently read-only.
Are there mail, calendar and contacts?
Groupware/PIM (mail, calendar, contacts) is not yet implemented; the concept exists as a separate document under docs/, and implementation is in the backlog.
Which languages is the interface available in? German, English, Spanish, French and Italian. New documents start with German sample data.