Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .claude/scheduled_tasks.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"sessionId":"81531199-6279-44a0-bdfa-491d0e341724","pid":71323,"acquiredAt":1775602708358}
3 changes: 2 additions & 1 deletion apps/cockpit/src/lib/content-bundle.ts
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,8 @@ export function resolveRuntimeUrl(options: {
return null;
}

const baseUrl = process.env['NEXT_PUBLIC_COCKPIT_RUNTIME_BASE_URL'];
const baseUrl = process.env['NEXT_PUBLIC_COCKPIT_RUNTIME_BASE_URL']
?? 'https://examples.cacheplane.ai';

if (baseUrl && runtimeUrl) {
return `${baseUrl}/${runtimeUrl}`;
Expand Down
2 changes: 1 addition & 1 deletion apps/website/content/AGENTS.md.template
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,4 @@ Add to ~/.claude/settings.json:
{"mcpServers":{"angular-agent":{"command":"npx","args":["@cacheplane/angular-mcp"]}}}

## Version check
If this file is stale, fetch the latest: https://stream-resource.dev/llms-full.txt
If this file is stale, fetch the latest: https://cacheplane.ai/llms-full.txt
2 changes: 1 addition & 1 deletion apps/website/content/CLAUDE.md.template
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,4 @@ Add to ~/.claude/settings.json:
{"mcpServers":{"angular-agent":{"command":"npx","args":["@cacheplane/angular-mcp"]}}}

## Version check
If this file is stale, fetch the latest: https://stream-resource.dev/llms-full.txt
If this file is stale, fetch the latest: https://cacheplane.ai/llms-full.txt
64 changes: 0 additions & 64 deletions apps/website/src/components/landing/SocialProof.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,6 @@
import { motion } from 'framer-motion';
import { tokens } from '../../../lib/design-tokens';

<<<<<<< HEAD
=======
/**
* Companies displayed as social proof — sourced from the LangChain ecosystem.
* These represent the types of companies building with LangChain/LangGraph,
* the same ecosystem Angular Agent Framework serves.
*/
>>>>>>> origin/main
const COMPANIES = [
'Klarna',
'Elastic',
Expand All @@ -22,23 +14,15 @@ const COMPANIES = [
'Cisco',
'Workday',
'ServiceNow',
<<<<<<< HEAD
'Monday',
=======
'Monday.com',
>>>>>>> origin/main
];

/** Duplicate for seamless infinite scroll */
const SCROLL_ITEMS = [...COMPANIES, ...COMPANIES];

export function SocialProof() {
return (
<<<<<<< HEAD
<section style={{ padding: '36px 0', overflow: 'hidden' }}>
=======
<section style={{ padding: '24px 0', overflow: 'hidden' }}>
>>>>>>> origin/main
<motion.div
initial={{ opacity: 0 }}
whileInView={{ opacity: 1 }}
Expand All @@ -49,42 +33,27 @@ export function SocialProof() {
<p style={{
textAlign: 'center',
fontFamily: 'var(--font-mono,"JetBrains Mono",monospace)',
<<<<<<< HEAD
fontSize: '0.62rem',
=======
fontSize: '0.6rem',
>>>>>>> origin/main
textTransform: 'uppercase',
letterSpacing: '0.12em',
fontWeight: 700,
color: tokens.colors.textMuted,
<<<<<<< HEAD
marginBottom: 22,
=======
marginBottom: 16,
>>>>>>> origin/main
}}>
Built for teams shipping with LangChain
</p>

{/* Scrolling logo strip */}
<div style={{
position: 'relative',
<<<<<<< HEAD
maxWidth: 1060,
margin: '0 auto',
borderRadius: 20,
=======
maxWidth: 900,
margin: '0 auto',
borderRadius: 16,
>>>>>>> origin/main
background: tokens.glass.bg,
backdropFilter: `blur(${tokens.glass.blur})`,
WebkitBackdropFilter: `blur(${tokens.glass.blur})`,
border: `1px solid ${tokens.glass.border}`,
overflow: 'hidden',
<<<<<<< HEAD
padding: '32px 0',
}}>
{/* Fade edges */}
Expand All @@ -96,19 +65,6 @@ export function SocialProof() {
<div style={{
position: 'absolute', right: 0, top: 0, bottom: 0, width: 100, zIndex: 1,
background: 'linear-gradient(to left, rgba(248,249,252,0.9), transparent)',
=======
padding: '16px 0',
}}>
{/* Fade edges */}
<div style={{
position: 'absolute', left: 0, top: 0, bottom: 0, width: 60, zIndex: 1,
background: 'linear-gradient(to right, rgba(244,240,255,0.95), transparent)',
pointerEvents: 'none',
}} />
<div style={{
position: 'absolute', right: 0, top: 0, bottom: 0, width: 60, zIndex: 1,
background: 'linear-gradient(to left, rgba(244,240,255,0.95), transparent)',
>>>>>>> origin/main
pointerEvents: 'none',
}} />

Expand All @@ -118,22 +74,16 @@ export function SocialProof() {
style={{
display: 'flex',
alignItems: 'center',
<<<<<<< HEAD
gap: 72,
width: 'max-content',
paddingLeft: 48,
paddingRight: 48,
=======
gap: 48,
width: 'max-content',
>>>>>>> origin/main
}}
>
{SCROLL_ITEMS.map((company, i) => (
<span
key={`${company}-${i}`}
style={{
<<<<<<< HEAD
fontFamily: 'var(--font-inter, Inter, system-ui, sans-serif)',
fontSize: 'clamp(20px, 1.6vw, 26px)',
fontWeight: 800,
Expand All @@ -144,16 +94,6 @@ export function SocialProof() {
userSelect: 'none',
lineHeight: 1,
padding: '4px 0',
=======
fontFamily: 'var(--font-garamond,"EB Garamond",Georgia,serif)',
fontSize: 'clamp(14px, 1.1vw, 17px)',
fontWeight: 700,
color: tokens.colors.textMuted,
whiteSpace: 'nowrap',
opacity: 0.6,
letterSpacing: '0.02em',
userSelect: 'none',
>>>>>>> origin/main
}}
>
{company}
Expand All @@ -169,11 +109,7 @@ export function SocialProof() {
100% { transform: translateX(-50%); }
}
.logo-scroll-track {
<<<<<<< HEAD
animation: logo-scroll 35s linear infinite;
=======
animation: logo-scroll 30s linear infinite;
>>>>>>> origin/main
}
.logo-scroll-track:hover {
animation-play-state: paused;
Expand Down
4 changes: 2 additions & 2 deletions apps/website/src/components/shared/Footer.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ export function Footer() {
<NewsletterForm />
{/* Social links */}
<div className="flex items-center gap-4">
<a href="https://github.com/cacheplane/stream-resource"
<a href="https://github.com/cacheplane/angular"
target="_blank"
rel="noopener noreferrer"
className="transition-colors"
Expand Down Expand Up @@ -156,7 +156,7 @@ export function Footer() {
onMouseLeave={(e) => (e.currentTarget.style.color = tokens.colors.textSecondary)}>
Pricing
</Link>
<a href="https://github.com/cacheplane/stream-resource"
<a href="https://github.com/cacheplane/angular"
target="_blank" rel="noopener noreferrer"
className="transition-colors" style={{ color: tokens.colors.textSecondary }}
onMouseEnter={(e) => (e.currentTarget.style.color = tokens.colors.accent)}
Expand Down
4 changes: 2 additions & 2 deletions apps/website/src/components/shared/Nav.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ export function Nav() {
{l.label}
</Link>
))}
<a href="https://github.com/cacheplane/stream-resource"
<a href="https://github.com/cacheplane/angular"
target="_blank"
rel="noopener noreferrer"
className="transition-colors"
Expand Down Expand Up @@ -125,7 +125,7 @@ export function Nav() {
</Link>
))}
<div className="flex items-center gap-4 pt-2">
<a href="https://github.com/cacheplane/stream-resource"
<a href="https://github.com/cacheplane/angular"
target="_blank"
rel="noopener noreferrer"
style={{ color: tokens.colors.textSecondary }}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,7 @@
import { Component, computed } from '@angular/core';
<<<<<<< HEAD
import { ChatComponent } from '@cacheplane/chat';
import { agent } from '@cacheplane/angular';
import { environment } from '../environments/environment';
=======
import { ChatComponent, views } from '@cacheplane/chat';
import { signalStateStore } from '@cacheplane/render';
import { agent } from '@cacheplane/angular';
import { environment } from '../environments/environment';
import { FilePreviewComponent } from './views/file-preview.component';
>>>>>>> origin/main

/**
* Represents a file operation extracted from agent tool calls.
Expand Down Expand Up @@ -38,11 +30,7 @@ interface FileOperation {
imports: [ChatComponent],
template: `
<div class="flex h-screen">
<<<<<<< HEAD
<chat [ref]="stream" class="flex-1 min-w-0" />
=======
<chat [ref]="stream" [views]="ui" [store]="uiStore" class="flex-1 min-w-0" />
>>>>>>> origin/main
<aside class="w-72 shrink-0 border-l overflow-y-auto p-4 space-y-2"
style="border-color: var(--chat-border, #333); background: var(--chat-bg, #171717); color: var(--chat-text, #e0e0e0);">
<h3 class="text-xs font-semibold uppercase tracking-wide"
Expand Down Expand Up @@ -82,15 +70,6 @@ export class FilesystemComponent {
assistantId: environment.streamingAssistantId,
});

<<<<<<< HEAD
=======
readonly ui = views({
'file-preview': FilePreviewComponent,
});

readonly uiStore = signalStateStore({});

>>>>>>> origin/main
/**
* Reactive list of file operations derived from the message history.
*
Expand Down
27 changes: 0 additions & 27 deletions cockpit/deep-agents/planning/angular/src/app/planning.component.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
<<<<<<< HEAD
import { Component, computed } from '@angular/core';
import { ChatComponent } from '@cacheplane/chat';
import { agent } from '@cacheplane/angular';
Expand All @@ -24,21 +23,11 @@ interface PlanStep {
* - `planSteps` is derived from `stream.value()` for reactive sidebar rendering
* - Step status icons update in real time as the agent progresses
*/
=======
import { Component } from '@angular/core';
import { ChatComponent, views } from '@cacheplane/chat';
import { signalStateStore } from '@cacheplane/render';
import { agent } from '@cacheplane/angular';
import { environment } from '../environments/environment';
import { PlanChecklistComponent } from './views/plan-checklist.component';
import { CheckboxRowComponent } from './views/checkbox-row.component';

>>>>>>> origin/main
@Component({
selector: 'app-planning',
standalone: true,
imports: [ChatComponent],
<<<<<<< HEAD
template: `
<div class="flex h-screen">
<chat [ref]="stream" class="flex-1 min-w-0" />
Expand Down Expand Up @@ -98,20 +87,4 @@ export class PlanningComponent {
: 'pending') as PlanStep['status'],
}));
});
=======
template: `<chat [ref]="stream" [views]="ui" [store]="uiStore" class="block h-screen" />`,
})
export class PlanningComponent {
protected readonly stream = agent({
apiUrl: environment.langGraphApiUrl,
assistantId: environment.planningAssistantId,
});

readonly ui = views({
'plan-checklist': PlanChecklistComponent,
'checkbox-row': CheckboxRowComponent,
});

readonly uiStore = signalStateStore({});
>>>>>>> origin/main
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,4 @@ export const environment = {
production: false,
langGraphApiUrl: 'http://localhost:4310/api',
streamingAssistantId: 'planning',
<<<<<<< HEAD
=======
planningAssistantId: 'planning',
>>>>>>> origin/main
};
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,4 @@ export const environment = {
production: true,
langGraphApiUrl: '/api',
streamingAssistantId: 'planning',
<<<<<<< HEAD
=======
planningAssistantId: 'planning',
>>>>>>> origin/main
};
Original file line number Diff line number Diff line change
@@ -1,15 +1,7 @@
import { Component, computed } from '@angular/core';
<<<<<<< HEAD
import { ChatComponent } from '@cacheplane/chat';
import { agent } from '@cacheplane/angular';
import { environment } from '../environments/environment';
=======
import { ChatComponent, views } from '@cacheplane/chat';
import { signalStateStore } from '@cacheplane/render';
import { agent } from '@cacheplane/angular';
import { environment } from '../environments/environment';
import { CodeExecutionComponent } from './views/code-execution.component';
>>>>>>> origin/main

/**
* Represents a parsed code execution: the code that was run and its output.
Expand All @@ -36,11 +28,7 @@ interface CodeExecution {
imports: [ChatComponent],
template: `
<div class="flex h-screen">
<<<<<<< HEAD
<chat [ref]="stream" class="flex-1 min-w-0" />
=======
<chat [ref]="stream" [views]="ui" [store]="uiStore" class="flex-1 min-w-0" />
>>>>>>> origin/main
<aside class="w-80 shrink-0 border-l overflow-y-auto p-4 space-y-3"
style="border-color: var(--chat-border, #333); background: var(--chat-bg, #171717); color: var(--chat-text, #e0e0e0);">
<h3 class="text-xs font-semibold uppercase tracking-wide"
Expand Down Expand Up @@ -76,15 +64,6 @@ export class SandboxesComponent {
assistantId: environment.streamingAssistantId,
});

<<<<<<< HEAD
=======
readonly ui = views({
'code-execution': CodeExecutionComponent,
});

readonly uiStore = signalStateStore({});

>>>>>>> origin/main
/**
* Derived signal: extracts code executions from the message stream.
*
Expand Down
Loading