diff --git a/cmd/ps.go b/cmd/ps.go
index 66ee0200..bdda0d4e 100644
--- a/cmd/ps.go
+++ b/cmd/ps.go
@@ -127,6 +127,16 @@ func (d *DryccCmd) PsDescribe(appID, podID string) error {
 		for _, arg := range containerState.Args {
 			table.Append([]string{"", fmt.Sprintf("- %v", arg)})
 		}
+		// Status/Reason/Message
+		if containerState.Status != "" {
+			table.Append([]string{"Status:", containerState.Status})
+		}
+		if containerState.Reason != "" {
+			table.Append([]string{"Reason:", containerState.Reason})
+		}
+		if containerState.Message != "" {
+			table.Append([]string{"Message:", containerState.Message})
+		}
 		// State
 		for key := range containerState.State {
 			table.Append([]string{"State:", key})
diff --git a/cmd/pts.go b/cmd/pts.go
index 7eb106ce..5a29d469 100644
--- a/cmd/pts.go
+++ b/cmd/pts.go
@@ -140,47 +140,51 @@ func printProcessTypes(d *DryccCmd, appID string, ptypes api.Ptypes) {
 func printProcessTypeDetail(d *DryccCmd, ptypeStates api.PtypeStates, events api.AppEvents) {
 	// table process type
 	tpt := d.getDefaultFormatTable([]string{})
-	for _, containerState := range ptypeStates {
-		// tpt.Append([]string{"Container: " + containerState.Container})
-		// tpt.Append([]string{"Image: " + containerState.Image})
-		tpt.Append([]string{"Container:", containerState.Container})
-		tpt.Append([]string{"Image:", containerState.Image})
-		if len(containerState.Command) != 0 {
+	for _, ptypeState := range ptypeStates {
+		tpt.Append([]string{"Container:", ptypeState.Container})
+		tpt.Append([]string{"Image:", ptypeState.Image})
+		if len(ptypeState.Command) != 0 {
 			tpt.Append([]string{"Command:"})
-			for _, command := range containerState.Command {
+			for _, command := range ptypeState.Command {
 				tpt.Append([]string{"", fmt.Sprintf("- %v", command)})
 			}
 		}
-		if len(containerState.Args) != 0 {
+		if len(ptypeState.Args) != 0 {
 			tpt.Append([]string{"Args:"})
-			for _, arg := range containerState.Args {
+			for _, arg := range ptypeState.Args {
 				tpt.Append([]string{"", fmt.Sprintf("- %v", arg)})
 			}
 		}
-		if containerState.Limits != nil {
+		if len(ptypeState.Limits) != 0 {
 			tpt.Append([]string{"Limits:"})
-			for r, q := range containerState.Limits {
+			for r, q := range ptypeState.Limits {
 				tpt.Append([]string{"", fmt.Sprintf("%s %s", r, q)})
 			}
 		}
-		if len(containerState.VolumeMounts) != 0 {
+		if len(ptypeState.VolumeMounts) != 0 {
 			tpt.Append([]string{"Mounts:"})
-			for _, mount := range containerState.VolumeMounts {
+			for _, mount := range ptypeState.VolumeMounts {
 				tpt.Append([]string{"", fmt.Sprintf("%s from %s", mount.MountPath, mount.Name)})
 			}
 		}
-		sp := getHealthcheckString("", "", &containerState.StartupProbe)
+		sp := getHealthcheckString("", "", &ptypeState.StartupProbe)
 		if sp != "" {
 			tpt.Append([]string{"Startup:", strings.TrimSpace(sp)})
 		}
-		lp := getHealthcheckString("", "", &containerState.LivenessProbe)
+		lp := getHealthcheckString("", "", &ptypeState.LivenessProbe)
 		if lp != "" {
 			tpt.Append([]string{"Liveness:", strings.TrimSpace(lp)})
 		}
-		rp := getHealthcheckString("", "", &containerState.ReadinessProbe)
+		rp := getHealthcheckString("", "", &ptypeState.ReadinessProbe)
 		if rp != "" {
 			tpt.Append([]string{"Readiness:", strings.TrimSpace(rp)})
 		}
+		if len(ptypeState.NodeSelector) != 0 {
+			tpt.Append([]string{"Node-Selectors:"})
+			for k, v := range ptypeState.NodeSelector {
+				tpt.Append([]string{"", fmt.Sprintf("%s=%s", k, v)})
+			}
+		}
 
 	}
 	tpt.Render()
diff --git a/drycc.go b/drycc.go
index 0f62087b..6cfd89f8 100644
--- a/drycc.go
+++ b/drycc.go
@@ -60,8 +60,8 @@ Subcommands, use 'drycc help [subcommand]' to learn more:
   labels        manage labels of application
   limits        manage resource limits for your application
   perms         manage permissions for applications
-  ps            manage processes inside an app container
-  pts           manage process types inside an app container
+  ps            manage processes inside an app
+  pts           manage process types inside an app
   registry      manage private registry information for your application
   releases      manage releases of an application
   routing       manage routability of an application
