Skip to content

Commit d2dca34

Browse files
committed
add docs for inkeep cli profiles
1 parent 7ef02c2 commit d2dca34

File tree

1 file changed

+88
-0
lines changed

1 file changed

+88
-0
lines changed

agents-docs/content/docs/typescript-sdk/cli-reference.mdx

Lines changed: 88 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ inkeep push
7474
- `--agents-manage-api-url <url>` - Override the management API URL from config
7575
- `--agents-run-api-url <url>` - Override agents run API URL
7676
- `--json` - Generate project data as JSON file instead of pushing to server
77+
- `--profile <name>` - Use a specific CLI profile (overrides the active profile)
78+
- `--quiet` - Suppress interactive prompts and extra logs
7779

7880
#### Single Project Push
7981

@@ -120,6 +122,12 @@ inkeep push --agents-run-api-url https://run.example.com
120122

121123
# Use specific config file
122124
inkeep push --config ./custom-config/inkeep.config.ts
125+
126+
# Use a named profile (overrides the active profile)
127+
inkeep push --profile staging
128+
129+
# Quiet non-essential output for CI
130+
inkeep push --quiet
123131
```
124132

125133
#### Batch Push with `--all`
@@ -271,6 +279,8 @@ inkeep pull
271279
- `--verbose` - Enable verbose logging
272280
- `--force` - Force regeneration even if no changes detected
273281
- `--introspect` - Completely regenerate all files from scratch (no comparison needed)
282+
- `--profile <name>` - Use a specific CLI profile (overrides the active profile)
283+
- `--quiet` - Suppress interactive prompts and extra logs
274284

275285
#### Single Project Pull
276286

@@ -381,6 +391,12 @@ inkeep pull --config ./custom-config/inkeep.config.ts
381391

382392
# Pull all projects from server
383393
inkeep pull --all
394+
395+
# Pull using a specific profile (overrides active)
396+
inkeep pull --profile staging
397+
398+
# Quiet non-essential output for CI
399+
inkeep pull --quiet
384400
```
385401

386402
#### Batch Pull with `--all`
@@ -634,6 +650,78 @@ inkeep config list
634650
- `--config <path>` - Path to configuration file
635651
- `--config-file-path <path>` - Path to configuration file (deprecated, use --config)
636652

653+
### `inkeep profile`
654+
655+
Manage named CLI profiles for multiple remotes, credentials, and environments. Profiles are stored in `~/.inkeep/profiles.yaml`. A default `cloud` profile points to hosted endpoints.
656+
657+
```yaml
658+
# ~/.inkeep/profiles.yaml
659+
activeProfile: cloud
660+
profiles:
661+
cloud:
662+
remote: cloud
663+
credential: inkeep-cloud
664+
environment: production
665+
local:
666+
remote:
667+
manageApi: http://localhost:3002
668+
manageUi: http://localhost:3000
669+
runApi: http://localhost:3003
670+
credential: inkeep-local
671+
environment: development
672+
```
673+
674+
**Subcommands:**
675+
676+
- `inkeep profile list` — Show all profiles and the active one.
677+
- `inkeep profile add <name>` — Interactive creation for cloud or custom URLs; writes to `profiles.yaml`.
678+
- `inkeep profile use <name>` — Switch the active profile.
679+
- `inkeep profile current` — Show the active profile details and credential key.
680+
- `inkeep profile remove <name>` — Delete a profile (cannot remove the active one).
681+
682+
**Examples:**
683+
684+
```bash
685+
# Create a local profile and switch to it
686+
inkeep profile add local
687+
inkeep profile use local
688+
689+
# Inspect which profile is active
690+
inkeep profile current
691+
692+
# List all profiles
693+
inkeep profile list
694+
695+
# Remove an unused profile
696+
inkeep profile remove staging
697+
```
698+
699+
**How profiles are used:**
700+
701+
- `inkeep login --profile <name>` stores credentials under the profile’s credential key.
702+
- Commands that talk to the APIs (`push`, `pull`, `status`, `login`, `logout`) honor `--profile <name>`; if omitted, the active profile is used.
703+
- Each profile bundles remote URLs, an environment name, and a credential reference so you can move between cloud and self-hosted deployments without editing config files.
704+
705+
#### Using profiles with authenticated deployments
706+
707+
If your deployment requires authentication (cloud or self-hosted), run `inkeep login` for each profile so its credential slot in `profiles.yaml` has a token in the system keychain:
708+
709+
```bash
710+
# Authenticate against your secured deployment
711+
inkeep login --profile local
712+
713+
# Validate which profile is active before running commands
714+
inkeep profile current
715+
716+
# Use the profile when pushing/pulling
717+
inkeep push --profile local
718+
inkeep pull --profile local
719+
```
720+
721+
- The `credential` field in the profile is the key used to store the token; `login` writes to that key and `push/pull/status` read from it.
722+
- Repeat `login --profile <name>` for every profile/remote you operate against.
723+
- Use `inkeep logout --profile <name>` to clear a profile’s stored credentials if you need to rotate access.
724+
637725
### `inkeep add`
638726

639727
Pull a template project or MCP from the [Inkeep Agents Cookbook](https://github.com/inkeep/agents/tree/main/agents-cookbook).

0 commit comments

Comments
 (0)