productivity
Beamer CLI for AI Agents
Use the Beamer CLI from KosmoKrator to call Beamer tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.Beamer CLI Setup
Beamer can be configured headlessly with `kosmokrator integrations:configure beamer`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure beamer --set api_key="$BEAMER_API_KEY" --enable --read allow --write ask --json
kosmokrator integrations:doctor beamer --json
kosmokrator integrations:status --json Credentials
Authentication type: API key api_key. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
| Key | Env var | Type | Required | Label |
|---|---|---|---|---|
api_key | BEAMER_API_KEY | Secret secret | yes | API Key |
url | BEAMER_URL | URL url | no | Beamer API URL |
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call beamer.beamer_list_posts '{"limit":1,"page":1,"status":"example_status"}' --json kosmo integrations:beamer beamer_list_posts '{"limit":1,"page":1,"status":"example_status"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs beamer --json
kosmo integrations:docs beamer.beamer_list_posts --json
kosmo integrations:schema beamer.beamer_list_posts --json
kosmo integrations:search "Beamer" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
beamer.beamer_list_posts
List changelog posts and announcements from Beamer. Supports pagination with limit and page, and filtering by status (published, draft, scheduled).
read - Parameters
- limit, page, status
kosmo integrations:call beamer.beamer_list_posts '{"limit":1,"page":1,"status":"example_status"}' --json kosmo integrations:beamer beamer_list_posts '{"limit":1,"page":1,"status":"example_status"}' --json beamer.beamer_get_post
Retrieve a single Beamer changelog post by its ID. Returns the full post including title, content, date, category, and metadata.
read - Parameters
- id
kosmo integrations:call beamer.beamer_get_post '{"id":1}' --json kosmo integrations:beamer beamer_get_post '{"id":1}' --json beamer.beamer_create_post
Create a new changelog post or announcement in Beamer. Provide a title and content (HTML supported). Optionally set a category and scheduled publication date.
write - Parameters
- title, content, category, date
kosmo integrations:call beamer.beamer_create_post '{"title":"example_title","content":"example_content","category":1,"date":"example_date"}' --json kosmo integrations:beamer beamer_create_post '{"title":"example_title","content":"example_content","category":1,"date":"example_date"}' --json beamer.beamer_list_comments
List all comments on a specific Beamer post. Returns comment text, author info, and timestamps.
read - Parameters
- post_id
kosmo integrations:call beamer.beamer_list_comments '{"post_id":1}' --json kosmo integrations:beamer beamer_list_comments '{"post_id":1}' --json beamer.beamer_get_current_user
Get the profile of the currently authenticated Beamer user. Returns name, email, role, and account details. Useful for verifying credentials.
read - Parameters
- none
kosmo integrations:call beamer.beamer_get_current_user '{}' --json kosmo integrations:beamer beamer_get_current_user '{}' --json beamer.beamer_list_categories
List all post categories in your Beamer account. Returns category IDs and names for use when creating or filtering posts.
read - Parameters
- none
kosmo integrations:call beamer.beamer_list_categories '{}' --json kosmo integrations:beamer beamer_list_categories '{}' --json beamer.beamer_api_get
Call any Beamer GET API endpoint relative to the configured base URL.
read - Parameters
- path, params
kosmo integrations:call beamer.beamer_api_get '{"path":"example_path","params":"example_params"}' --json kosmo integrations:beamer beamer_api_get '{"path":"example_path","params":"example_params"}' --json beamer.beamer_api_post
Call any Beamer POST API endpoint relative to the configured base URL.
write - Parameters
- path, body
kosmo integrations:call beamer.beamer_api_post '{"path":"example_path","body":"example_body"}' --json kosmo integrations:beamer beamer_api_post '{"path":"example_path","body":"example_body"}' --json beamer.beamer_api_put
Call any Beamer PUT API endpoint relative to the configured base URL.
write - Parameters
- path, body
kosmo integrations:call beamer.beamer_api_put '{"path":"example_path","body":"example_body"}' --json kosmo integrations:beamer beamer_api_put '{"path":"example_path","body":"example_body"}' --json beamer.beamer_api_delete
Call any Beamer DELETE API endpoint relative to the configured base URL.
write - Parameters
- path, body
kosmo integrations:call beamer.beamer_api_delete '{"path":"example_path","body":"example_body"}' --json kosmo integrations:beamer beamer_api_delete '{"path":"example_path","body":"example_body"}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
beamer.beamer_list_posts 3 parameters
kosmo integrations:schema beamer.beamer_list_posts --json | Parameter | Type | Required | Description |
|---|---|---|---|
limit | integer | no | Maximum number of posts to return (default: 10, max: 100). |
page | integer | no | Page number for pagination (default: 1). |
status | string | no | Filter by publication status: "published", "draft", or "scheduled". |
beamer.beamer_get_post 1 parameters
kosmo integrations:schema beamer.beamer_get_post --json | Parameter | Type | Required | Description |
|---|---|---|---|
id | integer | yes | The post ID. |
beamer.beamer_create_post 4 parameters
kosmo integrations:schema beamer.beamer_create_post --json | Parameter | Type | Required | Description |
|---|---|---|---|
title | string | yes | The post title. |
content | string | yes | The post body content. HTML formatting is supported. |
category | integer | no | The category ID to assign the post to. |
date | string | no | Publication date in ISO 8601 format (e.g., "2025-06-01T12:00:00Z"). Omit to publish immediately. |
beamer.beamer_list_comments 1 parameters
kosmo integrations:schema beamer.beamer_list_comments --json | Parameter | Type | Required | Description |
|---|---|---|---|
post_id | integer | yes | The post ID to list comments for. |
beamer.beamer_get_current_user 0 parameters
kosmo integrations:schema beamer.beamer_get_current_user --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
beamer.beamer_list_categories 0 parameters
kosmo integrations:schema beamer.beamer_list_categories --json | Parameter | Type | Required | Description |
|---|---|---|---|
| No parameters. | |||
beamer.beamer_api_get 2 parameters
kosmo integrations:schema beamer.beamer_api_get --json | Parameter | Type | Required | Description |
|---|---|---|---|
path | string | yes | API path such as /posts or /unread/count. |
params | object | no | Query parameters. |
beamer.beamer_api_post 2 parameters
kosmo integrations:schema beamer.beamer_api_post --json | Parameter | Type | Required | Description |
|---|---|---|---|
path | string | yes | API path such as /posts/{id}/comments. |
body | object | no | JSON body. |
beamer.beamer_api_put 2 parameters
kosmo integrations:schema beamer.beamer_api_put --json | Parameter | Type | Required | Description |
|---|---|---|---|
path | string | yes | API path. |
body | object | no | JSON body. |
beamer.beamer_api_delete 2 parameters
kosmo integrations:schema beamer.beamer_api_delete --json | Parameter | Type | Required | Description |
|---|---|---|---|
path | string | yes | API path. |
body | object | no | JSON body. |
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.