Skip to content

Update api and manage ui urls#1752

Merged
robert-inkeep merged 2 commits intomainfrom
robert-inkeep-patch-1
Feb 6, 2026
Merged

Update api and manage ui urls#1752
robert-inkeep merged 2 commits intomainfrom
robert-inkeep-patch-1

Conversation

@robert-inkeep
Copy link
Collaborator

No description provided.

@vercel
Copy link

vercel bot commented Feb 6, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
agents-api Ready Ready Preview, Comment Feb 6, 2026 0:12am
agents-docs Ready Ready Preview, Comment Feb 6, 2026 0:12am
agents-manage-ui Ready Ready Preview, Comment Feb 6, 2026 0:12am

Request Review

@changeset-bot
Copy link

changeset-bot bot commented Feb 6, 2026

🦋 Changeset detected

Latest commit: b754fba

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 10 packages
Name Type
@inkeep/agents-cli Major
@inkeep/agents-api Major
@inkeep/agents-manage-ui Major
@inkeep/agents-core Major
@inkeep/agents-manage-mcp Major
@inkeep/agents-mcp Major
@inkeep/agents-sdk Major
@inkeep/agents-work-apps Major
@inkeep/ai-sdk-provider Major
@inkeep/create-agents Major

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@claude
Copy link
Contributor

claude bot commented Feb 6, 2026

Claude encountered an error —— View job


Starting PR review…

  • Analyze PR context and changes
  • Explore codebase for relevant context
  • Dispatch domain-specific reviewers
  • Aggregate findings and post review

Changes identified:

  • CLOUD_REMOTE.api: agents-api.inkeep.comapi.agents.inkeep.com
  • CLOUD_REMOTE.manageUi: manage.inkeep.comapp.inkeep.com
  • LOCAL_REMOTE.manageUi: localhost:3001localhost:3000

@claude
Copy link
Contributor

claude bot commented Feb 6, 2026

Claude finished @robert-inkeep's task in 3m 0s —— View job


PR Review Summary

3 Key Findings | Risk: High

🔴❗ Critical (1) ❗🔴

🔴 1) agents-cli/src/ Hardcoded URLs not updated alongside constants

files:

  • agents-cli/src/commands/init.ts:168 - hardcoded API URL in fetch call
  • agents-cli/src/commands/init.ts:456 - hardcoded localhost:3001 in local profile creation
  • agents-cli/src/commands/init.ts:522 - hardcoded API URL in generated config template
  • agents-cli/src/commands/login.ts:172-173 - fallback URLs hardcoded to old values
  • agents-cli/src/utils/ci-environment.ts:86 - fallback API URL hardcoded

Issue: The PR updates the CLOUD_REMOTE and LOCAL_REMOTE constants in types.ts, but there are 6 additional hardcoded references to the old URLs scattered across the codebase. These will continue using the old URLs, creating a split-brain scenario where some code paths use new URLs and others use old URLs.

Why: Users will experience inconsistent behavior depending on which code path they hit:

  • init command will generate configs pointing to agents-api.inkeep.com (old) while resolved profiles point to api.agents.inkeep.com (new)
  • Local development setup via init --local will configure port 3001 while LOCAL_REMOTE says 3000
  • Login fallback will attempt to connect to old URLs if no profile exists

Fix: Update all hardcoded references to use the constants:

// init.ts line 168 - use resolved profile URL instead
const projectsUrl = `${resolvedProfile.remote.api}/manage/tenants/${selectedTenantId}/projects?limit=100`;

// init.ts line 456 - use LOCAL_REMOTE constant
import { LOCAL_REMOTE } from '../utils/profiles/types';
// ...
manageUi: LOCAL_REMOTE.manageUi,

// init.ts line 522 - use CLOUD_REMOTE constant
import { CLOUD_REMOTE } from '../utils/profiles/types';
// ...
url: CLOUD_REMOTE.api,

// login.ts lines 172-173 - use CLOUD_REMOTE constants
import { CLOUD_REMOTE } from '../utils/profiles/types';
// ...
manageApiUrl = CLOUD_REMOTE.api;
manageUiUrl = CLOUD_REMOTE.manageUi;

// ci-environment.ts line 86 - use CLOUD_REMOTE constant
agentsApiUrl: agentsApiUrl || CLOUD_REMOTE.api,

🟠⚠️ Major (2) 🟠⚠️

🟠 1) agents-cli/src/__tests__/ Test files will fail with hardcoded expectations

files:

  • agents-cli/src/__tests__/utils/profile-config.test.ts:83,126-127
  • agents-cli/src/__tests__/utils/ci-environment.test.ts:50
  • agents-cli/src/__tests__/commands/init.test.ts:276,313,337
  • agents-cli/src/__tests__/commands/init-utils.test.ts:46,57
  • agents-cli/src/utils/__tests__/url.test.ts:101,107

Issue: At least 5 test files contain hardcoded expectations for the old URLs. These tests will fail immediately after this PR merges.

Why: CI will break, blocking all subsequent PRs until tests are fixed. This also indicates the tests are brittle - they should reference the constants rather than hardcoding URLs.

Fix: Update test expectations to reference the constants or update to the new URLs:

// profile-config.test.ts - import and use constants
import { CLOUD_REMOTE } from '../../utils/profiles/types';

expect(profile.remote.api).toBe(CLOUD_REMOTE.api);
expect(profile.remote.manageUi).toBe(CLOUD_REMOTE.manageUi);

// Or update to new URLs directly:
expect(profile.remote.api).toBe('https://api.agents.inkeep.com');
expect(profile.remote.manageUi).toBe('https://app.inkeep.com');

🟠 2) .changeset/huge-dragons-film.md Changeset marked as minor may be under-classified

Issue: The changeset marks this as a minor version bump, but this changes production URLs that existing CLI installations will use immediately upon upgrade.

Why: Users with existing 'cloud' profile configurations will suddenly connect to different URLs after upgrading. If the old URLs are being deprecated and new URLs aren't yet fully operational, this could break existing workflows. Conversely, if this is a DNS change with both URLs active, minor is appropriate.

Fix: Clarify the deployment context:

  • If old URLs will continue working (redirect or dual-support): minor is fine
  • If old URLs are being retired: Consider major to signal breaking change, or document the migration path in the changeset description

Other Findings (3)

Potentially valid

Location Issue Reason Excluded
types.ts Port change from 3001→3000 ✅ Verified correct - agents-manage-ui runs on port 3000 per package.json

Discarded as invalid or not applicable

Location Issue Reason Excluded
agents-api/src/__tests__/ CORS tests May need URL updates Tests already cover both old and new URL patterns
Documentation May reference old URLs No docs reference these URLs

🚫 REQUEST CHANGES

Summary: This PR correctly updates the source-of-truth constants for cloud and local URLs, but the implementation is incomplete. There are 6 hardcoded URL references in source files and ~9 hardcoded test expectations that will not be updated, leading to split-brain behavior and immediate CI failures. The port change from 3001→3000 is verified correct. Please update all hardcoded references to use the constants (or update to new URLs) before merging.

@robert-inkeep robert-inkeep merged commit 96de898 into main Feb 6, 2026
3 of 8 checks passed
@robert-inkeep robert-inkeep deleted the robert-inkeep-patch-1 branch February 6, 2026 00:11
amikofalvy added a commit that referenced this pull request Feb 6, 2026
The cloud URL constants were updated in #1752 but the profile config
tests still expected the old URLs (agents-api.inkeep.com, manage.inkeep.com).

Co-authored-by: Cursor <cursoragent@cursor.com>
amikofalvy added a commit that referenced this pull request Feb 6, 2026
)

The cloud URL constants were updated in #1752 but the profile config
tests still expected the old URLs (agents-api.inkeep.com, manage.inkeep.com).

Co-authored-by: Cursor <cursoragent@cursor.com>
nick-inkeep added a commit that referenced this pull request Feb 13, 2026
Bug: `inkeep init --local` hardcoded `manageUi: 'http://localhost:3001'`
instead of importing the `LOCAL_REMOTE` constant (which was updated to
port 3000 in PR #1752). The device-code auth flow sent users to the
wrong port, causing ERR_CONNECTION_REFUSED for every new developer.

Fix:
- Import LOCAL_REMOTE in init.ts, replacing 4 hardcoded localhost URLs
- Centralize fallback URLs in profile-config.ts and config.ts to use
  LOCAL_REMOTE instead of inline strings
- Remove dead DEFAULT_LOCAL_PROFILE constant (never imported since
  creation in PR #1395)

Additionally, split `profile add` into three remote type options:
- Cloud: for Inkeep Cloud deployments (env defaults to 'production')
- Local: for local dev (URLs from LOCAL_REMOTE, credential auto-set
  to 'none', no URL/credential prompts, env defaults to 'development')
- Custom: for self-hosted/staging (placeholder hints, no pre-filled
  defaults, URL validation rejects empty input)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant