Last updated

/iblai-vibe-agent

Mirrored from iblai/vibe · skills/agents/iblai-vibe-agent/SKILL.md. This page is generated — edit it in the repository, not here.

First time here? If iblai.env has no ARCHITECTURE=, run /iblai-vibe-start first (four questions; two minutes) — it decides single-org / multi-org / headless and who signs in, and every skill reads the answer.

Everything about configuring an agent lives behind one provider and one route layout. Set the provider up once (§1), then mount only the tabs your app needs (§2). Most apps need five or six; the rest are there when asked for.

Settings tab
Settings tab

Common setup (brand, conventions, env files, verification): see docs/skill-setup.md.

Prerequisites

  • Auth in place (/iblai-vibe-auth, or vibe-starter).
  • A real agent UUID — the last path segment of https://os.ibl.ai/platform/<org-key>/<agent-uuid>, or one created with /iblai-vibe-agent-create. Never invent one.
  • The signed-in user must be the agent's owner, an org admin, or hold an editor role on it (/iblai-vibe-agent-access); otherwise tabs render "no access".

1. The provider (once)

// app/(app)/agents/[mentorId]/layout.tsx
"use client";

import { AgentSettingsProvider } from "@iblai/iblai-js/web-containers/next";
import { useParams } from "next/navigation";
import { useEffect, useState } from "react";
import { resolveAppTenant } from "@/lib/iblai/tenant";

export default function AgentLayout({ children }: { children: React.ReactNode }) {
  const { mentorId } = useParams<{ mentorId: string }>();
  const [tenantKey, setTenantKey] = useState("");
  const [username, setUsername] = useState("");

  useEffect(() => {
    try {
      const raw = localStorage.getItem("userData");
      if (raw) setUsername(JSON.parse(raw).user_nicename ?? "");
    } catch {}
    setTenantKey(resolveAppTenant());
  }, []);

  if (!tenantKey || !username) return null;

  return (
    <AgentSettingsProvider tenantKey={tenantKey} mentorId={mentorId} username={username} enableRBAC={false}>
      {children}
    </AgentSettingsProvider>
  );
}

Suggested routes: app/(app)/agents/[mentorId]/<tab>/page.tsx, one per tab, with a small tab strip (shadcn Tabs or plain links) in the layout. Each tab component reads the agent from context — no props needed for the basics.

2. The tabs

Start with the core six (bold). Add the others only when the user asks.

TabWhat it doesSkillREST twin (iblai-api-*, kind api)
Settingsname, description, avatar, category, visibility; copy to another org; delete/iblai-vibe-agent-settingagent-setting
Promptssystem prompt, proactive/study/guided prompts, suggested prompts/iblai-vibe-agent-promptagent-prompt
LLMprovider + model selection (incl. the org's own keys)/iblai-vibe-agent-llmagent-llm
DatasetsRAG: files, URLs, YouTube, crawl, GitHub; train/retrain/iblai-vibe-agent-datasetagent-dataset
Memoryenable memory; manage memories and categories/iblai-vibe-agent-memory (guide: /iblai-vibe-memory-guide)agent-memory
Toolsenable/disable the agent's tools/iblai-vibe-agent-toolagent-tool
AccessRBAC sharing: editor / chat / analytics roles for users and groups/iblai-vibe-agent-accessagent-access
APIAPI keys for this agent/iblai-vibe-agent-apiagent-embed
Billingspend cap for the agent and per user/iblai-vibe-agent-billingspend-caps
Embedembed code, styling, shareable links/iblai-vibe-agent-embedagent-embed
Evalsbenchmarks, LLM-as-Judge reviews, manual scores, CSV export/iblai-vibe-agent-evalsagent-eval
Graderrubric-based grading with overrides/iblai-vibe-agent-grader—
Historyconversation history with filters and export/iblai-vibe-agent-historyagent-history
LTILTI 1.3 launch, keys, tools, endpoints/iblai-vibe-agent-lti—
MCPconnectors (featured + custom), OAuth/iblai-vibe-agent-mcpagent-mcp
PrivacyPII filtering (allow / redact / mask / block) and the Incognito policy/iblai-vibe-agent-privacyagent-privacy
Safetymoderation prompts, flagged content/iblai-vibe-agent-safetyagent-safety
Sandboxcomputing runtime / VM shell / Claw instances/iblai-vibe-agent-sandboxagent-sandbox
Skillsreusable Agent Skills, per-agent assignment, chat / picker/iblai-vibe-agent-skillsagent-skill
Supporthuman support ticket inbox/iblai-vibe-agent-supportagent-support
Tasksscheduled periodic agent tasks with run logs/iblai-vibe-agent-task—
Voicevoice selection and voice-call configuration/iblai-vibe-agent-voice—
Auditwho changed what and when/iblai-vibe-agent-auditagent-audit
Disclaimersuser agreement and advisory text/iblai-vibe-agent-disclaimeragent-disclaimer

Every tab skill has screenshots of the surface it mounts — open the skill before promising the user what they will see.

NeedSkill
Create an agent from the app/iblai-vibe-agent-create
Chat with an agent/iblai-vibe-agent-chat (+ /iblai-vibe-agent-chat-sidebar)
Browse / star agents/iblai-vibe-agent-search
Agent-scoped analytics/iblai-vibe-analytics with mentor_unique_id

Verify

Run /iblai-vibe-ops-test before telling the user the work is ready: pnpm build, pnpm test, then Touch test /agents/<uuid>/settings in the browser as /iblai-vibe-ops-test says: every tab, the console, the phone width.

Copyright © ibl.ai | support@iblai.zendesk.com