agentleFS
Microsoft AzureKnown publisherAzure/LogicAppsUX/libs/logic-apps-shared/CLAUDE.md

LogicAppsUX / logic-apps-shared

CLAUDE.md114 starsChanged 4 months agoMITView on GitHub

Foundation library containing shared utilities, service interfaces, and common functionality used across all Logic Apps packages. Package: @microsoft/logic-apps-shared i18n utilities using react-intl: Important type definitions: - Workflow - Workflow definition - Operation - Operation metadata - Connection - Connection configuration - Connector - Connector metadata - Parameter - Operation parameters Test utilities provided in /utils/src/lib/mocks/: - Mock services - Test data factories - Provider wrappers Minimal dependencies (foundation package): - @apidevtools/swagger-parser - API parsing - @xyflow/react - Graph types -…

We split this CLAUDE.md into the rules it gives an agent

2 rules. About 0 are common, 0 are distinctive, and 2 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈0

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 2

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Test utilities provided in /utils/src/lib/mocks/:

    line 126
  2. Very specific:

    Read libs/logic-apps-shared/src/graphify-out/GRAPH_REPORT.md for structural context (god nodes, communities, surprising connections).

    line 149

≈ “Common” is an estimate: at least 1 in 5 of the 25,680 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
CLAUDE.md
<!-- AUTO-GENERATED from docs/ai-setup/packages/logic-apps-shared.md. DO NOT EDIT directly. -->

Logic Apps Shared

Foundation library containing shared utilities, service interfaces, and common functionality used across all Logic Apps packages.

Package: @microsoft/logic-apps-shared

Purpose

  • Service interfaces - Abstract contracts for all services
  • Common utilities - Shared helper functions
  • Type definitions - Core TypeScript types
  • Parsers - Expression and schema parsers
  • Internationalization - i18n utilities

Commands

pnpm run build:lib   # Build library
pnpm run test:lib    # Run unit tests

Architecture

Entry Point

src/index.ts exports all public APIs.

Structure

/src
  /designer-client-services/   - Service interfaces and base classes
    /lib/base/                 - Abstract base services
    /lib/consumption/          - Consumption tier implementations
    /lib/standard/             - Standard tier implementations
    /lib/common/               - Shared service utilities
  /parsers/                    - Expression and schema parsers
  /intl/                       - Internationalization
  /utils/                      - General utilities
    /lib/exception/            - Error handling
    /lib/helpers/              - Helper functions
    /lib/models/               - Data models
    /lib/mocks/                - Test mocks

Service Architecture

Base Services (/designer-client-services/lib/base/)

Abstract classes defining service contracts:

ServicePurpose
BaseConnectionServiceConnection management
BaseOperationManifestServiceOperation metadata
BaseSearchServiceOperation search
BaseWorkflowServiceWorkflow CRUD
BaseOAuthServiceOAuth authentication
BaseGatewayServiceOn-premises gateway
BaseTenantServiceTenant information

Environment Implementations

  • consumption/ - Azure Consumption tier
  • standard/ - Azure Standard tier (Functions-hosted)

Usage Pattern

// Define interface
interface IConnectionService {
  getConnection(id: string): Promise<Connection>
}

// Implement for environment
class StandardConnectionService extends BaseConnectionService {
  async getConnection(id: string): Promise<Connection> {
    // Standard tier implementation
  }
}

// Inject via provider
<ServiceProvider connectionService={connectionService}>
  <Designer />
</ServiceProvider>

Utilities

Expression Helpers

import { isExpression, parseExpression } from '@microsoft/logic-apps-shared'

isExpression('@{triggerBody()}') // true
parseExpression('@{concat("a", "b")}') // { function: 'concat', args: [...] }

Type Guards

import { isNullOrUndefined, isString } from '@microsoft/logic-apps-shared'

Internationalization

i18n utilities using react-intl:

import { getIntl, IntlMessages } from '@microsoft/logic-apps-shared'

const intl = getIntl()
intl.formatMessage({ defaultMessage: 'Hello' })

Key Types

Important type definitions:

  • Workflow - Workflow definition
  • Operation - Operation metadata
  • Connection - Connection configuration
  • Connector - Connector metadata
  • Parameter - Operation parameters

Testing

pnpm run test:lib

Test utilities provided in /utils/src/lib/mocks/:

  • Mock services
  • Test data factories
  • Provider wrappers

Dependencies

Minimal dependencies (foundation package):

  • @apidevtools/swagger-parser - API parsing
  • @xyflow/react - Graph types
  • axios - HTTP client
  • react-intl - i18n

Development Guidelines

  1. No UI dependencies - This is a foundation library
  2. Abstract interfaces - Define contracts, not implementations
  3. Backward compatibility - Changes affect all consumers
  4. Documentation - Export types should be documented
  5. Test coverage - Critical utilities need comprehensive tests

Graphify

Read libs/logic-apps-shared/src/graphify-out/GRAPH_REPORT.md for structural context (god nodes, communities, surprising connections).

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.