diff --git a/public/claude-ide/projects.js b/public/claude-ide/projects.js
index c7330292..cb64d10a 100644
--- a/public/claude-ide/projects.js
+++ b/public/claude-ide/projects.js
@@ -119,7 +119,9 @@ async function loadProjects() {
try {
projectsGrid.innerHTML = '
Loading projects...
';
- const response = await fetch('/api/projects');
+ const response = await fetch('/api/projects', {
+ credentials: 'include'
+ });
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
@@ -157,6 +159,7 @@ async function saveProject(projectData) {
headers: {
'Content-Type': 'application/json'
},
+ credentials: 'include',
body: JSON.stringify(projectData)
});
@@ -199,7 +202,8 @@ async function deleteProject(projectId) {
try {
const response = await fetch(`/api/projects/${projectId}`, {
- method: 'DELETE'
+ method: 'DELETE',
+ credentials: 'include'
});
if (!response.ok) {
@@ -222,7 +226,9 @@ async function deleteProject(projectId) {
*/
async function loadDeletedProjects() {
try {
- const response = await fetch('/api/projects?includeDeleted=true');
+ const response = await fetch('/api/projects?includeDeleted=true', {
+ credentials: 'include'
+ });
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
@@ -242,7 +248,8 @@ async function loadDeletedProjects() {
async function restoreProject(projectId) {
try {
const response = await fetch(`/api/projects/${projectId}/restore`, {
- method: 'POST'
+ method: 'POST',
+ credentials: 'include'
});
if (!response.ok) {
@@ -270,7 +277,8 @@ async function permanentDeleteProject(projectId) {
try {
const response = await fetch(`/api/projects/${projectId}/permanent`, {
- method: 'DELETE'
+ method: 'DELETE',
+ credentials: 'include'
});
if (!response.ok) {
diff --git a/public/claude-ide/sessions-landing.js b/public/claude-ide/sessions-landing.js
index 005b6e05..72d84d51 100644
--- a/public/claude-ide/sessions-landing.js
+++ b/public/claude-ide/sessions-landing.js
@@ -114,8 +114,8 @@ async function loadSessionsAndProjects() {
try {
// Fetch both sessions and projects in parallel
const [sessionsRes, projectsRes] = await Promise.all([
- fetch('/claude/api/claude/sessions'),
- fetch('/api/projects')
+ fetch('/claude/api/claude/sessions', { credentials: 'include' }),
+ fetch('/api/projects', { credentials: 'include' })
]);
if (!sessionsRes.ok) throw new Error('Failed to load sessions');
@@ -811,7 +811,9 @@ async function showSessionContextMenu(event, sessionId) {
// Fetch project suggestions
let suggestions = [];
try {
- const res = await fetch(`/api/projects/suggestions?sessionId=${sessionId}`);
+ const res = await fetch(`/api/projects/suggestions?sessionId=${sessionId}`, {
+ credentials: 'include'
+ });
if (res.ok) {
const data = await res.json();
suggestions = data.suggestions || [];
@@ -940,6 +942,7 @@ async function moveSessionToProject(sessionId, projectId) {
const res = await fetch(`/api/projects/sessions/${sessionId}/move`, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
+ credentials: 'include',
body: JSON.stringify({ projectId })
});