reqlanOverviewIdeasFilesCode filesClustersAttributesGraphPrint
Ideas/installation

Idea detail

installation

reqlan rq/extension/installation.rq:12

block

Summary

Reqlan installation has * * two sequenced layers * * that must not be conflated:
1. extension_installation — host product ( VS Code / Cursor extension ) install and first activation.
2. base_installation — marking a filesystem directory as a reqlan base and seeding its `.reqlan` application memory.
Extension install alone does * * not * * create a base. Base install alone does * * not * * open the welcome webview or install host agent skills.
CLI `init` shares the base path with the editor ( init / create_base_onboarding ).

Jump to outbound references

Jump to inbound references

Navigation

Source file

reqlan rq/extension/installation.rq

community 17

community cluster

installation.rq

file cluster

reqlan rq/extension

folder cluster

status: Not present

status cluster

tag: Not present

tag cluster

Printable page

Static print-friendly idea sheet.

Attributes

No attributes declared.

Ancestor context

extension_installation

Extension-level install covers packing, activation, and first-run host UX — not base filesystem state. There is * * no * * VS Code `onInstall` API; install-time behaviour runs on the * * first * * [activation.activation] after install ( [activation.activation_events] ). Sequencing inside `activate` is owned by [activation.activation_sequence]: - Sync register CodeLens / inlay config commands. - Synchronously register analytical submodule contributions ( commands, activity bar, chat, webviews, AI commands, mutation hooks ) without starting the index ( [activation.analytical_submodule_activation] ). - Register import quick-fixes, then schedule index and language-client startup through [activation.first_paint_startup] / [activation.background_startup]; sync catalogs once the language client exists. - Fire-and-forget [activation.onboarding_check] → [welcome_webview_install]. Failures in submodule or language client are logged and must not abort later phases or the welcome check. Related command surfaces: Show Onboarding ( [welcome.show_onboarding_command] ), Install Cursor Skills ( [skills_mcp.cursor_skills_install] ), Create Base ( [bases.create_base_onboarding] ).

base_installation

Base-level install marks a directory as a [bases.base] and seeds shared application memory under `<base>/.reqlan/` ( [app_memory.application_memory] ). Entry points ( same helper [create_base_impl] ): - Editor: `reqlan.createBase` / empty-state CTAs ( [bases.create_base_onboarding] ) — only after discovery finds * * zero * * bases; never on extension install alone. - CLI: `reqlan init [directory]` ( [cli.init] ). Idempotent: existing `.reqlan` is left alone ( `created: false` ). On * * new * * base creation the sequence is: 1. Create `<base>/.reqlan/` marker directory ( presence = base ). 2. Seed [base_config_seed] ( `.reqlan/config.json` ). 3. Seed [base_rqignore_seed] ( `.reqlan/.rqignore` ). 4. Editor rediscovers bases and activates indexing for that base; SQLite `ideas-index.sqlite` appears when the index opens ( not necessarily written at marker creation ). Child / nested bases follow [bases.base_nesting]; each base owns its own `.reqlan` seeds and index.

welcome_webview_install

The * * Welcome to Reqlan * * onboarding webview is the extension-install UX surface. Opened once on first activation when `onboardingMessageShown` is false ( [welcome.installation_event] / [welcome.installation_event_trigger] / [welcome.onboarding_state] ). Content: welcome copy, resolved phonebook links, syntax-highlighted example `.rq`, open-as-untitled control, activity bar / `@reqlan` tips, sponsor thanks. Must not block [activation.activation_sequence]; errors are logged only. Reopen on demand via [welcome.show_onboarding_command] without resetting shown state unless product policy changes. Implementation: ["../../packages/extension/src/extension/open-thanks-for-installing.ts"], ["../../packages/extension/src/extension/onboarding-panel.ts"], ["../../packages/extension/webviews/onboarding/"].

base_config_seed

New bases write a minimal `.reqlan/config.json` ( `{}` today ) via [create_base_impl]. Semantics and discovery of applying config: [configuration.configuration_location], [configuration.configuration_import_roots], [bases.base_configuration]. Schema / editor validation: [configuration.configuration_schema_file]. A child base does not inherit a parent base's config file.

base_rqignore_seed

New bases write `.reqlan/.rqignore` with gitignore-syntax defaults ( dependencies, venvs, build output, DBs such as `*.db3`, secrets, hidden entries, `.reqlan/` itself ). Built-in defaults always apply even if the file is missing; the seeded file is the editable surface ( [configuration.configuration_rqignore] / [app_memory.rqignore] ). Used by analytical discovery and indexing walks ( CLI and extension share `@reqlan/analytical` ).

Outbound references

KindIdeaPathSnippet
file_reference ../../packages/analytical/src/core/create-base.ts packages/analytical/src/core/create-base.ts —
file_reference ../../packages/extension/src/ai_commands_module/install-cursor-skills.ts packages/extension/src/ai_commands_module/install-cursor-skills.ts —
file_reference ../../packages/extension/src/extension/onboarding-panel.ts packages/extension/src/extension/onboarding-panel.ts —
file_reference ../../packages/extension/src/extension/open-thanks-for-installing.ts packages/extension/src/extension/open-thanks-for-installing.ts —
file_reference ../../packages/extension/webviews/onboarding/ packages/extension/webviews/onboarding/ —
file_reference ../bases/base.rq reqlan rq/bases/base.rq —
file_reference ../cli/cli_package.rq reqlan rq/cli/cli_package.rq —
file_reference ../development/build.rq reqlan rq/development/build.rq —
file_reference ./activation.rq reqlan rq/extension/activation.rq —
file_reference ./agents/features-ai.rq reqlan rq/extension/agents/features-ai.rq —
file_reference ./configuration.rq reqlan rq/extension/configuration.rq —
file_reference ./features-skills-and-mcp.rq reqlan rq/extension/features-skills-and-mcp.rq —
file_reference ./module/index.rq reqlan rq/extension/module/index.rq —
file_reference ./onboarding/page-thanks-for-installing.rq reqlan rq/extension/onboarding/page-thanks-for-installing.rq —
references base_installation reqlan rq/extension/installation.rq base_installation
references extension_installation reqlan rq/extension/installation.rq extension_installation

Inbound references

KindIdeaPathSnippet
None

Unresolved references

KindIdeaPathSnippet
references base base
references create_base_onboarding create_base_onboarding
references init init

Local graph

Initialising graph…